Bestückt mit einem einfachen Infrarot-Empfänger, wie dem VS1838B links, kann ein Arduino von einem Infrarot-Sender, beispielsweise der Fernbedienung rechts, angesteuert werden.
Um das nachvollziehen zu können, muss gewusst werden, dass beim Drücken einer Taste ein spezifisches Signal gesendet wird. Dieses Signal kann mithilfe des seriellen Monitors der Arduino IDE zur Anzei ge gebrachtwerden. Dazu muss der IR-Empfänger mit einem Arduino-Board (wie unten zu sehen) verbunden …
… und mit folgenden Code programmiert werden.
#include <boarddefs.h>
#include <IRremote.h>
IRrecv irrecv(11);
decode_results results;
void setup(){
Serial.begin(9600);
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode(&results)) {
Serial.println(results.value, DEC);
irrecv.resume();
}
}
Für das Programm wird die Bibliothek “ Arduino-IRremote-master“ benötigt, die hier heruntergeladen werden kann.
Nach dem Download kann die ZIP-Datei mit Hilfe der Arduino-IDE über „Sketch -> Bibliothek einbinden -> .ZIP-Bibliothek hinzufügen“ eingebunden werden.
Ist der Sketch übertragen, wird der serielle Monitor mit der Tastenkombination <Strg+Shift+M> gestartet und im Fenster unten rechts 9600 Baud ausgewählt.

Wird die Fernbedienung auf den IR-Empfänger gerichtet und eine Taste gedrückt, zeigt sich im Fenster des seriellen Monitors eine Zahlenfolge.
Mit diesem Wissen können Schaltvorgänge, wie sie beispielhaft von der Fernseh-Fernbedienung bekannt sind, ausgelöst werden. Das im Folgenden soll an einem Beispiel klar werden.
Für die Simulation bleibt der Aufbau mit dem IR-Empfänger unverändert.
Zunächst werden die Knöpfe auf der Fernbedienung festgelegt und deren Zahlenwerte ermittelt. Dann wird der Nano mit dem Code unten neu programmiert. Die dort enthaltenen Zahlenfolgen müssen natürlich durch die ermittelten ersetzt werden.
#include <boarddefs.h>
#include <IRremote.h>
IRrecv irrecv(11);
decode_results results;
void setup(){
pinMode(13, OUTPUT);
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode(&results)) {
if (results .value == 16738455) //Knopf 0
{
digitalWrite(13, HIGH);
}
if (results .value == 16724175) //Knopf 1
{
digitalWrite(13, LOW);
}
irrecv.resume();
}
}
Wenn alles richtig gemacht worden ist, sollte nun mit Knopf 0 die eingebaute LED ein- und mit Knopf 1 ausgeschaltet werden können.
Der Infrarotempfänger und die Fernbedienung können preisgünstig im Funduino-Shop erworben werden.