Ein bisschen Experimentieren
  IR-Presenter
 

Der IR-Presenter

Jeder kennt so ein schickes kleines Gerät, mit dem man eine PowerPoint Präsentation von der "Ferne" aus steuern kann. Warum also, so ein Ding nicht selber basteln. Die Vorteile liegen auf der Hand:
  • Funktioniert mit jeder RC5 Fernbedienung
  • Kostengünstigster Presenter, den es je gab
  • Keine Software auf PC-Seite notwendig
  • Spannungsversorgung direkt über die PS2 Schnittstelle
  • Individuell (passend für jede Präsentation vor (Elektronik-) Fach Publikum
Wie bei den meisten Projekten, gliederte sich die Entwicklung zum fertigen Presenter in mehrere Module.
Für das IR-Relais Projekt war eine Auseinandersetzung mit der RC5 Dekodierung bereits geschehen. So konnte der Eingangs-Teil, also die Infrarot-Schnittstelle, des Systems in groben Zügen übernommen werden. Das IR-Relais ist als ein über Infrarot fernbedinbares Solid-State Relais realisiert. Damit lässt sich nach dem Fernseh-Genuss mit einem Druck die gesamte Aperatur stromlos schalten. Dadurch werden "kann-nur-Standby" DVB-T Receiver, DVD-Player und Videorecorder vom Netz getrennt und benötigen keinen Standy-By Strom mehr. Einzig die kleine Schaltung benötigt dann noch etwas Strom.

Nach meinem Diplomarbeitsvortrag mit geliehenem Presenter, habe ich mir die findige Idee in den Kopf gesetzt, selbst einen Presenter zu basteln, der über IR funktioniert. Dabei sollte ein Mikrocontroller die Infrarotdaten empfangen, auswerten und über PS2 mit dem PC verbunden werden. Der µC übernimmt also die Rolle einer Tastatur.

Der nächste Schritt war nun, das PS2 Protokoll zu verstehen, was auf Grund von unterschiedlichen Webseiten, wie bsp. www.marjorie.de/ps2/start.htm gut gelingt. Herzlichen Dank an dieser Stelle.

Viele Forumsbeiträge behandelten auch das Thema und oft war zu lesen, dass man unbedingt die gesamte Kommunikation zwischen Tastatur und Host aufbauen muss, um auf Anfragen reagieren zu können. Einige findige Programmierer sprachen aber mutig:
"Schick dem PC einfach mal ein Zeichen und schau', ob's klappt."

Gesagt getan. Es wurden zwei Ports benötigt. Ein Port für PS2-Clock, einer für die PS2-Daten Leitung. Um die Schaltung noch über die PS2 Schnittstelle mit Strom zu versorgen runden VCC und GND die Steckerbelegung ab. Nach anfänglichen Auswertungen am analogen Oszi, (die gesendeten Zeichen wurden testweise so nacheinander gesendet, dass sie im Oszilloskop immer an der gleichen Stelle auftraten und somit auswertbar waren) wurde die richtige Frequenz der Daten eingestellt und testweise ein 's' gesendet.


Hier ist die Verbindung von µC direkt zum PS2 Port des Laptops erkennbar.

Um einen Buchstaben zu senden, der auch auf dem Bildschrim erscheint ist es ja notwendig ein "gedrückt" Signal zu senden und ein "losgelassen" Signal.
Man kann es wahrscheinlich nicht ordentlich auf dem Bild erkennen, aber siehe da, Notepad schreibt fleißig s's


Sehr interessant zu sehen, der Laptop mit dem an PS2 angeschlossenen µC und im Hintergrund der PC mit geöffneter Entwicklungsumgebung.

Der nächste Schritt war nun, den Infrarotempfang des RC5 Codes und die Generierung des PS2 Signals zusammen in ein Programm zu bekommen.


Hier ist der Probeaufbau für den alleinigen IR Empfang zu sehen. Da ein RC5 Protokoll mit einem 36kHz moduliertem Infrarotsignal ausgelesen werden soll, wird ein TSOP1736 verwendet, der praktischerweise genau mit den richtigen Anschlüssen in das myAVR Entwicklungsboard passt. Lediglich der Signalpin muss noch an die gewünschte Stelle geführt werden.

Wird nun ein Signal empfangen, dass zum Einen zur richtigen Fernbedienung passt und zum Anderen die Richtige Taste beinhaltet, wird ein virtueller Tastendruck an den Laptop gesendet.
Vorerst soll die Lösung mit einer handelsüblichen Fernbedienung genügen. Später wird ein selbst gebauter IR-Sender zum Einsatz kommen.

Erste Tests an einer PowerPoint Präsentation verliefen sehr zufrieden stellend. Einzig, ein immer mal wieder auftauchendes und nicht gut klingendes Warn-Piepen aus dem Inneren des Laptops ließen darauf schließen, dass irgendeine Kleinigkeit fehlte.


Nach einigen Versuchen der Zeitvariation zwischen dem "gedrückt" und "losgelassen" Befehl habe ich mich daran erinnert, dass bei der Einstellung der Übertragungsfrequenz am Oszilloskop, nur eine Periodendauer von etwas mehr als 100µs eingestellt war. Die benötigte Frequenz liegt aber zwischen 10kHz und 16,7kH. Nachdem ich die Hold-Zeiten meiner Clock und Daten verkürzt habe, funktionierte es einwandfrei und sehr zuverlässig.



Portierung auf TINY45

Nachdem das Grundgerüst der Firmware stand, galt meine Intension einer kleinen, praktischen Schaltung. Als Herzstück sollte ein 8-pinniger TINY dienen. Um später noch genügend Platz für Erweiterungen zu haben, (man weiß ja nie, auf welche Ideen man noch kommt) fiel die Entscheidung auf den TINY45 mit 4k Flash. Den Tiny kann man mit externen Quarz takten, allerdings habe ich einige Versuche angestellt die RC5-Dekodierung auch ohne Quarz zu bewerkstelligen, was auch gelang. Kritisch war an sich ja nur die Dekodierung des RC5-Signals, die PS2 Ansteuerung ist ja wegen der CLK Leitung nicht anfällig gegen Taktschwankungen, solange sich die Clock-Frequenz zwischen 10kHz und 16kHz bewegt.
Auf Grund dieser Einsparung des externen Quarzes, konnte das Layout noch kleiner ausfallen. Und zu guter Letzt fiel die Entscheidung, das erste Mal, einen µC in SMD Bauform zu verwenden. Dadurch wirkt die Platine von "oben" etwas leer, ist aber mit 25x30mm ein durchaus beachtliches "Bauwerk".


Die Schaltung wird direkt von der PS2 Schnittstelle mit Spannung versorgt und es wird keinerlei Software auf dem Rechner benötigt. Es kann nun jede RC5-Fernbedienung verwendet werden, um eine Präsentation zu steuern. Die Tasten für Vorwärts und Rückwärts sind Lautstärke+ und Lautstärke-, die bei jeder Fernbedienung den gleichen Tasten-Code haben sollten. Somit ist dieses kleine Modul, zum einen genial günstig und noch dazu flexibel einzusetzen.


Hier die Rückseite der Platine, leider ist an einer Seite etwas vom Substrat beim Zurechtschneiden abgeplatzt, aber die Schaltung blieb davon zum Glück unberührt. Der "Käfer" ist der TINY45 und läuft mit 8MHz internem Takt.


Hier nun, die wirklich überschaubare Schaltung für den IR-Presenter. Zum Programmieren dient die Standard 6-pol ISP Beschaltung, die hier mit zwei dreier Stiftleisten realisiert ist. Auf C2 könnte evtl. auch noch verzichtet werden.


Die Bestückung der Platine ist, bis auf den µC, mit bedrahteten Bauteilen zu machen. Die vierer Anschlussleiste dient zum Anschluss des PS2 Kabels.


Und hier das geroutete Layout der Schaltung.

Die Belegung des PS2 Steckers auf PC Seite ist folgendermaßen:


Bei der Verwendung eines fertigen Tastaturkabels, sind nur die vier benötigten Leitungen belegt.

 
 
  Copyright by Bastian  
 
=> Willst du auch eine kostenlose Homepage? Dann klicke hier! <=