Inhaltsverzeichnis:

Emulieren einer TV-Fernbedienung oder anders mit Arduino Irlib - Gunook
Emulieren einer TV-Fernbedienung oder anders mit Arduino Irlib - Gunook

Video: Emulieren einer TV-Fernbedienung oder anders mit Arduino Irlib - Gunook

Video: Emulieren einer TV-Fernbedienung oder anders mit Arduino Irlib - Gunook
Video: Infrarot Signale einer Fernbedienung decodieren mit dem Arduino und einem IR-Receiver 2024, November
Anonim
So emulieren Sie eine TV-Fernbedienung oder etwas anderes mit Arduino Irlib
So emulieren Sie eine TV-Fernbedienung oder etwas anderes mit Arduino Irlib

Einführung

Hallo zusammen und willkommen zu meinem ersten Instructable.

Heute lernen wir, wie der Titel schon sagt, mit Arduino (jedes Modell) eine TV-Fernbedienung oder etwas Ähnliches zu emulieren, das mit Infrarotsignalen funktioniert.

Das Problem war: Wie kann ich Codes an ein Objekt übermitteln, wenn ich den Code nicht kenne?

Bei der Suche im Internet fand ich keine Antwort auf meine Frage, also begann ich nachzudenken und erfand diese Methode selbst.

In diesem Tutorial zeige ich dir, wie das geht.

PS:

Bevor wir beginnen, möchte ich Ihnen sagen, dass Ir-Kommunikation sehr komplex ist und zunächst ein wenig Wissen erfordert.

Schritt 1: Material

Material
Material

Sie benötigen weniger Komponenten als Sie denken:

-Arduino (ich habe Leonardo verwendet)

-470 Ohm oder ähnlicher Widerstand !ACHTUNG!: Der Widerstandswert kann sich je nach IR-LED ändern

-IR-LED (ich habe SFH4546 verwendet)

-Einige Jumper

-IR-Empfänger (ich habe TSOP38238 verwendet)

-Breadboard

Dies ist, was ich für diese einfache, aber wesentliche Schaltung verwendet habe.

BEARBEITEN: Wenn Sie meine gleiche LED verwenden, verwenden Sie keinen Widerstand zwischen Arduino-Pin und LED, da dies die Entfernung von Ihrer Fernbedienung stark verringert

Wenn Sie nicht die gleiche IR-LED verwenden, schlage ich vor, einen Trimmer zu verwenden und ihn nach Belieben zu regulieren

Schritt 2: Schaltung und Codierung

Jetzt werfen wir einen Blick auf die Schaltung.

Wir müssen 2 Schaltungen bauen:

-Der erste Stromkreis muss das Signal von der Fernbedienung erfassen.

-Der zweite überträgt das Signal, das wir zuvor aufgenommen haben.

Also nimm Arduino, Steckbrett, Kabel und Empfänger und lass uns mit der Arbeit beginnen

Verbinden Sie zuerst 5V und GND mit Ihrem Receiver (meiner hat in der Reihenfolge OUT, GND, 5V)

Der OUT-Pin muss mit dem Arduino-Pin 2 verbunden werden. (Wie die Schaltung aussieht)

Sobald Sie dies getan haben, müssen wir die Anode unserer LED mit dem Widerstand und die Kathode mit Masse verbinden.

Vom Widerstand werden wir später mit dem Pin verbinden, der von der Ir-Bibliothek definiert wird. (So sieht die Schaltung aus)

Der Code ist ganz einfach:

Zuerst müssen wir die Bibliotheken installieren:

-Die IrLib2-Bibliothek für die Empfangspassage

Sie müssen dann die ZIP-Datei öffnen und die Ordner in dieser Datei in Ihren Bibliotheksordner kopieren.

-Die IrRemote-Bibliothek zum Senden

Sobald Sie dies getan haben, öffnen Sie die Arduino IDE und gehen Sie vom Beispielmenü in den IrLib2-Beispielordner, und laden Sie dann die Skizze "RawRecv.ino" auf Ihr Arduino-Board.

Sobald es auf die Platine geladen ist, öffnen Sie den seriellen Monitor, nehmen Sie die Fernbedienung, die Sie emulieren möchten, richten Sie sie auf den IR-Empfänger und drücken Sie eine Taste darauf: Sie sehen eine Ausgabe (Rohcode) auf dem Monitor, also kopieren Sie sie einfach hinein die Zwischenablage.

Die nächste Passage ist das Senden der Codes, die wir erworben haben.

Jedes einzelne Arduino-Modell hat seinen eigenen Pin für die IRsend-Klasse und kann aufgrund einiger Einschränkungen durch die Hardware nicht geändert werden.

Hier gibt es eine Tabelle mit Pin-Einstellung einiger Arduino-Boards.

Dies ist meine Skizze, sie sendet den Befehl channel_up an einen alten Samsung-Fernseher:

#enthalten

IRsend irsend; #define RAW_DATA_LEN 68 //Ausgabe von RawRecv uint16_t rawData[RAW_DATA_LEN]={ 4458, 4482, 546, 1698, 550, 1690, 554, 1690, 546, 606, 518, 610, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 1686, 550, 1694, 550, 602, 522, 606, 530, 598, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 598, 522, 606, 530, 1686, 554, 602, 518, 610, 522, 602, 522, 1694, 554, 602, 522, 1694, 550, 1690, 546, 610, 526, 1690, 546, 1694, 554, 1690, 546, 1000}; Void setup () {} Void Schleife () { irsend.sendRaw (rawData, RAW_DATA_LEN, 38); // Rohdaten mit 38 kHz Frequenzverzögerung senden (1000); // Sekunde Verzögerung zwischen jedem Signalburst }

ACHTUNG: Kopieren und Einfügen in die IDE funktioniert möglicherweise nicht, wenn es nicht funktioniert, müssen Sie jede einzelne Zeile schreiben

Schritt 3: Testen und Fertigstellen

Es ist jetzt Zeit für einen Test!

Zeigen Sie Ihre LED auf den Empfänger auf die gleiche Weise wie die Fernbedienung und schalten Sie Ihr Arduino ein. Warten Sie eine Sekunde und Sie werden sehen, dass das empfangende Gerät beginnt, das zu tun, was wir ihm sagen, also das war's!

Wenn etwas nicht stimmt, hinterlassen Sie bitte unten einen Kommentar.

Das ist das Ende unseres Instructable. Ich hoffe, es ist nützlich für Sie.

Kommentieren Sie, wenn Sie ein Video von diesem Tutorial wünschen und……….

zum nächsten Instructable!

Empfohlen: