Banner Ausblenden
Kleines Logo

Willkommen auf PSI-Online

IR Remote Fehrnbedinung

Infrarot Fernbedienung

Ein Infrarot Fernbedienungs-Set besteht aus zwei Teilen: Dem Sender und Empfänger. In den Sender muss eine Battarie eingelegt werden, der Empfänger sollte wie folgt an den Arduino angeschlossen werden.

Anschluss Empfänger

Das Aussehen der Empfänger kann von Modell zu Modell variieren, er sollte aber immer 3 Pins haben, die gezeigt angeschlossen werden.

Bevor man anfangen kann den Arduino zu programmieren, muss man eine Bibliothek installieren, die einem die Arbeit sehr erleichtert. Nach dem Herunterladen (https://github.com/z3t0/Arduino-IRremote/archive/master.zip) muss die Datei entpackt werden, und aus dem Nahmen des enthaltenen Ordners müssen alle Bindestriche entfernt werden, da es sonst zu Fehlern kommen kann. Danach muss der Ordner in /libaries des Arduino-Installationsordners verschoben werden. Dieser befindet sich normalerweise unter: C:\Program Files (x86)\Arduino\libraries (WICHTIG: Sollte bereits ein Ordner mit dem Nahmen "RobotIRemote" vorhanden sein, muss dieser gelöscht werden)

Nach dem Neustart der Software kann man nun loslegen. In diesem Beisbielcode erden Die empfangenen Signale in Dezimalzahlen umgewandelt und mit Hilfe des Seriellen Monitors ausgegeben:

------------------------------------------------
#include
 
int pin = 11;
IRrecv irrecv(pin);
decode_results results;
 
void setup(){
Serial.begin(9600);
irrecv.enableIRIn();
}
 
 
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, DEC);
irrecv.resume();
}
}
------------------------------------------------
 
Wenn man nun das Programm auf den Arduino hochlädt, den seriellen Monitor öffnet, und einige Taten auf der Fernbedienung drückt, sollten verschiedene Zahlen ausgegeben werden, die jeweils eine bestimmte Taste repräsentieren. Um den Arduino auf einen bestimmten Tastendruck reagieren zu lassen, muss man nurnoch ein paar Zeilen VOR "irrecv.resume();" einfügen:
 
------------------------------------------------
if (results.value == 16753245){
Serial.println("OK");
}
------------------------------------------------
 
Jetzt wird auf dem Seriellen Monitor jedes mal "OK" ausgegeben, wenn die Taste mit dem Code 16753245 gedrückt wird. Diese Zahl, und was in der If Schleife passiert kann natürlich angepasst werden. Das war es auch schon. Wer noch wissen will was die einzelnen Befehle machen kann hier hier gerne noch nachgucken.
 
 

Erstellt: Tim Sandner (10.01.2016) Letzte Änderung: Tim Sandner (10.01.2016)