Von Manuel Magnin, Mail: Info(a)Clinch.ch
Management Summary: Dieses Projekt soll in einfachster
Weise mittels einer IR Fernbedienung auf einem PC Funktionen
ausführen und eine Software Schnittstelle zur Verfügung
stellen.
Als Ersatz für Maus und Tastatur und dafür reicht eine
handelsübliche IR Fernbedienung.
Inhalt:
1. Vorwort und Download's
2. Hardware - beschrieb und Aufbau
3. Software - beschrieb
4. Mechanischer Aufbau
5. Versionen, UpDates und zu erledigen
6. FAQ Fragen und Antworten
7. IR-Codes & Anhang
1. Vorwort und Download's
Download: IRCOM.exe
(IRCOM_Source.zip)
Systemvoraussetzungen: O/S: Win9x, WinME, WinNT,
W2k,WinXP CPU: Pentium-III ab 200MHz. RAM: grösser 64MB (Win9x,
WinME & WinNT) sonst mindestens 128MB.
2. Hardware - Beschrieb und
Aufbau
2. IR-Interface
GrundIdee: Eine Empfangsschaltung die den UART der RS232
Schnittstelle nutzt
Speziell: Da die Schaltung den UART des PC's
für den Empfang verwendet, sind keine zeitkritischen Funktionen
nötig. Das heist, es kann der RAM Buffer (FIFO) des UART's
verwendet werden (auch ohne IRQ's).
Zur Stromversorgung werden die Steuerleitungen RTS und DTR
verwendet ( RTS auf minus & DTR auf plus ).
RC5-Code: Bei RC5 Code in der zweiten Schaltung
ist zu beachten, dass der RC5-Code nicht direkt entschlüsselt
werden kann, da der Code durch die Start und Stop Bits des
Seriellen registers teils vernichtet werden. Die Datenrate des
RC5 Codes ist knapp 600BPS ( IR - RC5 = 1.778mS pro Bit, Bit=01
oder 10! ), da aber die digitalen Signale in der Polarität
wechseln muss mit dem Doppelten gefahren werden ca. 1200BPS (
1-Bit = 0.889mS ==> 1124.86 Baud)
Die Berechnung des Uart DIvisors mit der Formel: 8250UART-Divisor
= 1843200 / ( 1124.86 * 16 ) = 102.41 = 0x66h }
Die 18 Bits des RC5 Code werden so zu ca. 36Bits, es sind also
jeweils 5 Byte die zusammen gehören wenn sie Zeitlich direkt
aufeinander folgen.
PCM-Code (SONY): Auch PCM IR-Signale können mit
dieser Schaltung einfach dekodiert werden. Die Daten werden mit
konstantem Tackt gesendet wobei die Länge des Pulses die
Bit-Information enthält. So in unserem Fall wird der UART auf
9600 BPS gesetzt. Bei einem Bit mit dem Wert '0' wird das Zeichen
Char(0) empfangen und bei einem '1' wird das Zeichen Char(0xC0h)
gelesen (80h + 40h) d.h. das Startbit so wie das höchstwertige-
und das zweithöchstwertige Bit sind gesetzt. (Puls für eine '0'
< 0.1mS und der Plus für eine '1' ca. 3mS). Total werden
16-Bit übertragen d.g. 0-65'535 Möglichkeiten.
Weiter ist wichtig, dass der IR-Empfänger IC keinen zu hohen
Stromverbrauch aufweist, da sonst das Signal am RxD zu niedrig
ausfällt.
Die komplette Elektronik kann direkt in das D-Sub-9
Steckergehäuse eingebaut werden
SFH5110.pdf BC547.pdf
1N4007.pdf TSOP.jpg
WiderstandFarbCode LM78L05.pdf
3. Software - Beschrieb
Die Software besteht aus dem Betriebssystem, dem Empfangsprogram IRCOM.
3.1 Installation
Beim ersten starten von IRCOM werden alle nötigen Einträge in
der Registry erstellt. Alle Einstellungen im Programm IRCOM
werden in der Registry abgelegt, so dass diese beim nächsten
Programm Start zur Verfügung stehen. Beim starten wir nach den
Schnittstellen gescannt COM1..4 für den IR-Empfänger
3.2 Bedienung
Bedienung sollte keine nötig sein
5. Versionen, UpDates und zu
erledigen
V0.01
V0.011
7. Anhang
7.1 Sony SIRC Protocol (IR-Codes)
Spezifikationen SIRC Protokoll: | ||
Layer-1 | Infra rot | 950nm |
Trägerfrequenz | 40kHz | |
Modulation | PWM | |
Start Bit | 2.4mS | |
Logisch "1" | 1.2mS / 0.6mS | |
Logisch "0" | 0.6mS / 0.6mS | |
Layer-II | Packetgrösse | 12 / 15 oder 20 Bit |
12 Bit Frame | 5-Bit Adresse & 7-Bit Kommando |
Modulation SIRC:
Protokoll Beisipiel SIRC
7.2 Philips RC-5 Protocol (IR-Codes)
Das am weitesten verbreitete Protokoll ist
von Philips - das RC-5, da am meisten Sender zur Verfügung
stehen und die Normierung öffentlich ist.
Spezifikationen Philips R-5 Protokoll: | ||
Layer-1 | Infra rot | 950nm |
Trägerfrequenz | 36kHz | |
Modulation | Bi-phase coding (aka Manchester coding) | |
Start Bits | 3 Bit | |
Logisch "1" ( "10" ) | 1.778ms | |
Logisch "0" ( "01" ) | 1.778ms | |
Layer-II | Packetgrösse | 14 Bit |
14 Bit Frame | 3-Bit-Start, 5-Bit Adresse & 6-Bit Kommando |
Modulation Philips RC-5:
Protokoll Beisipiel Philips RC-5
Es gibt eine unglaubliche vielzahl von IR-Protokolen so z.B. die
Protokolle von: ITT, JVC, NEC, Nokia NRC17, Sharp, X-Sat,
Philips: RC-5, RC-6, RC-MM, RECS80, u.v.m. Die meisten dieser
Protokolle habe die Bit-Information in der Pause (Space) nach
einem Puls mit Fixer Länge.
Weitere Protokollbeschreibungen in englisch: http://www.xs4all.nl/~sbp/knowledge/ir/ir.htm
7.3 IR-Detector Schaltung
Das am weitesten verbreitete Protokoll ist
von Philips - das RC-5, da am meisten Sender zur Verfügung
stehen und die Normierung öffentlich ist.
7.4 RC5 IR-Decoder mit Controller
Für den PC unabhängigen Empfang ist
folgende Schaltung geeignet:
Source Code zum Download: RC5.ASM