Arduino Infrarot (IR) Übertragung

Zusätzliche Infrarotfunktionen (IR):

Software

Bibliotheken auf Github für Arduino:

NameLinkBeschreibungProblemen
Arduino-IRremotehttps://github.com/z3t0/Arduino-IRremote/tree/master/examplesDie Codierung der unterschiedlichsten Fernbedienungen finden Sie auch hier.Kann nicht mit Neopixeln (auch bekannt als WS2811 / WS2812 / WS2812B) arbeiten (stören sich gegenseitig)
A1100-with-PV-Energy-Monitorhttps://github.com/dmworking247/A1100-with-PV-Energy-MonitorKommunikation mit dem Elster A1100 Meter
IRLremote 2.0.0https://github.com/NicoHood/IRLremoteLesen die "Lightweight" -Fernbedienung
ESP8266-IR-Remote-Examplehttps://github.com/witnessmenow/ESP8266-IR-Remote-ExampleESP8266 und IR-Kommunikation

Verdrahtung

Es ist am besten, den IR gemäß den Softwareanweisungen zu verdrahten. Bei UNO wird normalerweise der 3. Pin für den LED-Ausgang empfohlen:

IR Verdrahtung

38-kHz-IR-Sendermodul KY-005

Identisch mit dem Modul ST1087 .

  • Betriebsspannung: 2,7 ~ 5,5V
  • Frequenz: 37,9 kHz
  • Reichweite ca. 18m

HX1838 NEC IR-Fernbedienung

Der HX1838, auch als VS1838 bekannt, ist eine Fernbedienung, die mit dem NEC IR-Protokoll vertrieben wird. Die Übertragungseigenschaften sind die gleichen wie beim KY-005. Der KY-022 kann hier auch als Empfangseinheit verwendet werden.

Beispielprogramm

Zwei Beispielprogramme für den HX1838: https://gist.github.com/ryanamaral/34726743c4adbf0002d5
Die IRremote-Bibliothek kann von hier aus installiert werden: https://github.com/z3t0/Arduino-IRremote

38-kHz-IR-Empfängermodul KY-022

Identisch mit dem Modul ST1089.

Die Datenübertragung zwischen den Modulen KY-005 und KY-022 kann nur implementiert werden, wenn das Umgebungslicht <500 Lux ist.
Das Modul übernimmt das Übertragungsprinzip IR1838.

  • Betriebsspannung: 2,7 ~ 5,5V
  • Frequenz: 37,9 kHz
  • Reichweite ca. 18m

Beispielprogramm

Die IRremote-Bibliothek kann von hier aus installiert werden: https://github.com/z3t0/Arduino-IRremote

# Include <IRremote.h>
int RECV_PIN = 11; // define input pin on Arduino
IRrecv irrecv (RECV_PIN);
decode_results results;
void setup ()
{
Serial.begin (9600);
irrecv.enableIRIn (); // Start the receiver
}
void loop () {
if (irrecv.decode (& results)) {
Serial.println (results.value, HEX);
irrecv.resume (); // Receive the next value
}
}