Inhaltsverzeichnis:
Video: One Control Multi-LED-Streifen - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:18
Ich habe 5 Möbelstücke, in die ich LED-Lichtbänder einbauen wollte.
Die LEDs mussten mit einer Option für Alexa ON/OFF ferngesteuert werden. ALLE LEDs mussten sich mit nur einem Drücken der Fernbedienung synchron einschalten und die Farbe ändern. Sie mussten sich auch die zuletzt gewählte Farbe beim Ausschalten merken.
Das optionale Alexa ON/OFF wird von einem ESP8266 gesteuert, die Fernbedienung erfolgt über einen Infrarot-Controller und die Farbinformationen werden über die extrem günstigen 433 MHz Sender und Empfänger verteilt.
Ich habe ein identisches Setup für meine Unterschrankbeleuchtung in meiner Küche, aber ich habe einen 315-MHz-Sender und -Empfänger verwendet, da ich keine Interaktion zwischen den beiden wollte.
Schritt 1: Komponenten
Wie bei den meisten meiner Projekte ist die Anzahl der Komponenten gering und die meiste Arbeit wird in der Software erledigt.
Die Fernbedienung wurde mit einem günstigen RGB-LED-Streifen (eBay) geliefert.
Programmierbare Neopixel-LED-Streifen (NICHT RGB)
Arduino pro mini (obwohl jeder Arduino dies tut)
Infrarot-Empfänger
433MHz Sender
4 x 433 MHz Empfänger
OPTIONAL ESP8266 nur für Alexa ON/OFF (NICHT Farbsteuerung)
Alle Einheiten werden von Standard-Telefonladegeräten mit Strom versorgt.
Der ESP8266 wird von einem 5V bis 3V-Regler gespeist, der von einem Standard-Telefonladegerät gespeist wird.
Schritt 2: Wie es funktioniert
Dieses Projekt besteht aus 3 Teilen
1) Die Master-Einheit
2) Die Slave-Einheiten
3) Optionaler Alexa-Schalter.
Die Master-Einheit besteht aus einem Arduino, einem Infrarot-Empfänger, einem 433MHz-Sender und einem LED-Streifen
Der Infrarot-Code wird vom Arduino empfangen und decodiert, der wiederum den Neopixel-LED-Streifen steuert.
Wenn die Farben am Master-Gerät eingestellt sind, werden die Informationen dann über den 433MHz-Sender an die Slave-Geräte gesendet.
Die Slave-Einheiten bestehen aus einem Arduino, einem 433MHz-Empfänger und einem Neopixel-LED-Streifen.
Beim Empfang des Codes von der Master-Einheit werden die LED-Streifen an allen Slaves auf die gleiche Farbe eingestellt.
HINWEIS:
Ich wollte RGB-LED-Streifen verwenden, ABER es gab einen Konflikt mit den LED-Streifen und den 433-MHz-Empfängern!
Es lag an den internen Timern von Arduino. Die Verwendung von PWM an zu vielen Pins, während der Empfänger aktiviert war, war das Problem, weshalb ich mich für die programmierbaren LED-Streifen entschieden habe - viel Kontrolle an nur einem PWM-Pin.
Der optionale Alexa-Schalter ist nur ein ESP2866-12e mit 3 Schaltern und 2 gepulsten Ausgängen.
Ausführlichere Informationen finden Sie im Softwareschritt.
Wenn Alexa "Lights On" (benutzerprogrammierbar) sagt, pulst Pin 10 des Arduino HIGH, der den gleichen Code wie die ON-Taste des IR-Senders sendet. Licht aus pulsiert Pin 11 HIGH und sendet denselben Code wie die OFF-Taste des IR-Senders. Der Schalter steuert nicht die Farben !
WICHTIGER HINWEIS
Wenn die Alexa-Option nicht verwendet wird, MÜSSEN BEIDE Arduino-Pins 10 und 11 mit Masse kurzgeschlossen werden, sonst blinken die LEDs nur !!
Schritt 3: Die Software
Die Software besteht aus 3 Teilen.
1) Die Master-Einheit (leddir433-V2_RXTX.ino)
2) Die Slave-Einheiten (IR_rxarduino_V2.ino)
3} Die optionale Alexa-Switch-Software. Die restlichen 6 Dateien sollten vor dem Hochladen auf den ESP8266 in einen einzigen Ordner kopiert werden.
Die Master-Einheit
Pin 2 am Master-Gerät ist mit dem IR-Empfänger verbunden.
Pin 6 ist mit dem Dateneingang des LED-Streifens verbunden.
Pin 12 ist mit dem 433MHz Sender verbunden.
Es gibt ein Array, das den Code vom IR-Empfänger enthält, die RG- und B-Pegel (0 - 255, ich betreibe sie nur mit etwa 20% Helligkeit) und der letzte Parameter (1 oder 0) wird als Flag verwendet, um merken (1) oder vergessen (0) den zuletzt empfangenen Code. Dies bedeutet, dass beim Einschalten der LEDs die zuletzt gewählte Farbe verwendet wird. Ich möchte mich nicht an die Codes der EIN- und AUS-Tasten erinnern, sondern nur an die Farbcodes.
HINWEIS: Wenn die Alexa-Option nicht verwendet wird, MÜSSEN die Pins 10 und 11 des Arduino mit 0 V verbunden werden.
Die Sklaveneinheiten
Der Empfangspin des 433MHz-Empfängers ist mit Pin 2 des Arduino verbunden.
Der LED-Streifen ist an Pin 6 angeschlossen.
Die LED-Streifen werden auf die Farbe des empfangenen Codes eingestellt.
HINWEIS:
Ich habe einen neuen LED-Streifen hinter meinem Sofa hinzugefügt, damit die LEDs heller sind als die in den Schränken.
Ich habe gerade die BOLD-Zeile geändert, um die empfangenen Werte mit 2 zu multiplizieren, die *2 wird normalerweise weggelassen!
void settrip(int r, int g, int b){
für (int n=0;n < N_LEDS;n++)
{//Serial.println (n);
strip.setPixelColor(n, r*2, g*2, b*2); // strip.setPixelColor (n, r, g, b);
}
Strip-Show();
inString="";
msg=" ";
}
Der Alexa-Schalter
Ich habe 8 Alexa-Switches gemacht (und verwendet). Die Schaltung ist einfach und die gesamte Arbeit wird in der Software erledigt.
Ich kann den Code nicht anerkennen, ich habe nur die Ausgaben geändert.
Es ist das übliche Setup für die Programmierung des ESP8266 und es gibt jede Menge "How To" im Internet.
Beim ersten Einschalten prüft der ESP, ob er zuvor mit einem Access Point verbunden war. Wenn dies nicht der Fall ist oder der vorherige Zugangspunkt nicht mehr verfügbar ist, richtet er sich selbst als Zugangspunkt mit einer Webseite ein, damit Sie Ihre Router-Anmeldeinformationen und eine Alexa-Phrase eingeben können, z Lampe' usw.
Die Alexa-Phrase MUSS mit einem '*' enden, zB Tischlampe*.
Pin 4 des ESP geht auf Pin 10 des Arduino
Pin 12 des ESP geht an Pin 11 des Arduino
Pin 5 ist ein optionaler Ausgang für eine LED mit Widerstand, um das verbundene WLAN anzuzeigen (ich verwende dies nicht)
Wenn Pin 13 des ESP beim Einschalten geerdet ist (0 V), werden die Alexa-Phrase und die letzten Router-Anmeldeinformationen gelöscht.
Ersteinrichtung oder Einrichtung nach Masseschluss von Pin 13 (Parameter-Reset)
Nach der Programmierung des ESP8266 oder des Parameter-Resets sollte auf dem seriellen Arduino-Monitor Folgendes zu sehen sein:
*WM: Zugangspunkt konfigurieren… *WM: AutoConnectAP
*WM: AP-IP-Adresse:
*WM: 192.168.4.1
*WM: HTTP-Server gestartet.
Gehen Sie nun auf einem PC oder Mobilgerät zu den WLAN-Einstellungen und wählen Sie den AutoConnectAP
Öffnen Sie einen Browser und geben Sie in die Adressleiste 192.168.4.1 ein (Siehe Bilder)
Wählen Sie "WLAN konfigurieren"
Wählen Sie Ihren Router aus der Liste aus und geben Sie Ihr Passwort und den Alexa-Satz ein - vergessen Sie nicht das *
Setzen Sie nun das ESP zurück.
Gehen Sie zur Alexa-App oder bitten Sie sie, Geräte zu finden, das neue Gerät sollte erkannt werden.
Alexa kann jetzt verwendet werden, um das Licht ein- und auszuschalten.
Empfohlen:
So koppeln Sie einen Xbox One-Controller mit einem Windows 10-Laptop.: 16 Schritte
So koppeln Sie einen Xbox One Controller mit einem Windows 10 Laptop.: Sie benötigen:Xbox ControllerWindows 10 Laptop
DIY Multi-Room-WLAN + Bluetooth-Audiosystem - Hi-Fi: 7 Schritte
DIY Multi-Room-WLAN + Bluetooth-Audiosystem | Hi-Fi: Ich liebe Musik und ich weiß, dass du das auch tust. Aus diesem Grund bringe ich dir dieses Tutorial, das dich dazu führt, dein eigenes Wi-Fi + Bluetooth Hi-Fi-Audiosystem zu erstellen, damit du in der Lage bist, Genießen Sie Ihre Musik von Ihrem Telefon, PC, Tablet, persönlichen Assistenten
Linkit ONE Setup-Anleitung für Windows: 7 Schritte
Linkit ONE Setup Guide für Windows: Das Linkit ONE ist eines der beeindruckendsten Arduino-ähnlichen Boards auf dem Markt. Es ist eine großartige Hochleistungsplattform für das Internet der Dinge und Wearables, einschließlich einer Vielzahl von Funktionen wie: WiFi und Bluetooth 4.0 GSM und GPRS GPS Audio Code
Rissigen Bildschirm HTC One X9 reparieren – wikiHow
So beheben Sie einen zerbrochenen Bildschirm des HTC One X9: Meine Mutter hat ihr Telefon fallen lassen und den Bildschirm wie abgebildet zerbrochen. Es rutschte tatsächlich aus der Handyhülle, während sie versuchte, ein Foto zu machen. Sie hielt das Telefon an der Hülle statt am Telefon, und mit der Zeit wird es locker und es kann herausfallen
Interessante Programmieranleitung für Designer--Program Process Control-Loop Statement: 8 Schritte
Interessante Programmieranleitung für Designer--Program Process Control-Loop Statement: Program Process Control-Loop StatementIn diesem Kapitel werden Sie mit einem wichtigen und mächtigen Wissenspunkt-Loop-Statement in Berührung kommen. Bevor Sie dieses Kapitel lesen, können Sie, wenn Sie 10.000 Kreise im Programm zeichnen möchten, nur mit einem ter