IR basierter Schalter

Aus Bequemlichkeitsgründen werden Geräte wie beispielsweise Fernseher und damit gekoppelte Geräte über Fernbedienungen geschaltet. Sie benutzen für das menschliche Auge unsichtbares infrarotes Licht zum Auslösen der Schaltvorgänge.

In der Vorderseite der Fernbedienung ist eine auf Knopfdruck infrarotes Licht aussendende und im zu schaltenden Gerät eine für infrarotes Licht empfängliche Diode eingebaut.

Näheres zur Funktionsweise dieses Sender-Empfänger-Modells findet sich hier am Beispiel eines fernsteuerbaren Fahrzeugs.

Der Schalter ist vom Aufbau vergleichbar mit dem WLAN-Schalter. Im Unterschied zu diesem kommt statt der NodeMCU ein Arduino Nano und ein Netzteil zum Einsatz, das 5V Gleichspannung liefert.

Während ein WLAN-Schalter von überall innerhalb des WLAN-Netzes ausgelöst werden kann, muss zwischen dem IR-Empfänger im Schalter und dem IR-Sender in der Fernbedienung eine Verbindung „auf Sicht“ bestehen. Auch gibt es Entfernungsbegrenzungen.

Wie aus der Zeichnung ersichtlich ist der IR-Empfänger an Pin 11 (grün), GND (braun) und 3,3V (rot) angeschlossen.

Das Steuersignal für das Relais kommt von PIN 7, die Stromversorgung für Relais und Controller über das Netzteil und zwar:

Nano: Plus an 5V, Minus an GND

Relais: Plus an VCC, Minus an GND

Programmierung:

 #include <boarddefs.h>
 #include <IRremote.h>  
 IRrecv irrecv(11);
 decode_results results;  
 void setup() {
   pinMode(7, OUTPUT);
   irrecv.enableIRIn();
 } 
 void loop() {
   if (irrecv.decode(&results)) {
     if (results.value == 16753245)  //CH- an der Bedienung
     {
       digitalWrite(7, HIGH);
     }
     if (results.value == 16736925)  //CH an der Bedienung 
     {
       digitalWrite(7, LOW);
     }
     irrecv.resume();
   }
 } 

Der achtstellige Zifferncode für die Tasten muss wie hier beschrieben ermittelt und in der Programmierung berücksichtigt werden.


Bezugsquellen:

Netzteil MW IRM-02-5, Arduino Nano, Relais