Inhaltsverzeichnis:

Wifi synchronisierte Lampen - Gunook
Wifi synchronisierte Lampen - Gunook

Video: Wifi synchronisierte Lampen - Gunook

Video: Wifi synchronisierte Lampen - Gunook
Video: Die BESTE Hintergrundbeleuchtung für TV & Monitor! (4K 120Hz & 8K 60Hz) 2024, Juli
Anonim
Image
Image

Ein Projekt für jemanden, der Ihr Leben erhellt…

Vor 2 Jahren habe ich als Weihnachtsgeschenk für einen Fernfreund Lampen entwickelt, die Animationen über eine Internetverbindung synchronisieren. Dieses Jahr, 2 Jahre später, habe ich diese aktualisierte Version mit dem Wissen erstellt, das ich aus den zusätzlichen Jahren des Elektronik-Dabbels gewonnen habe. Diese Version ist viel einfacher, ohne dass externe Monitore oder Tastaturen benötigt werden (und nur ein einfacher Chip, nicht zwei!)

Es gibt Schaltflächen in der App, die mehr Flexibilität beim Hinzufügen von Animationen bieten: Es gibt 3 Schieberegler für die RGB-Steuerung, zusätzlich zu einem Widget unten, mit dem Sie Farben aus einer Karte auswählen können (damit Sie kein um herauszufinden, was die RGB-Zahlen für die gewünschte Farbe sind). Es gibt auch voreingestellte Schaltflächen für fröhlich, wütend, traurig und "meh", so dass Sie Ihre Emotionen in Form von Lampenanimationen leicht an die andere Person übermitteln können, wenn Sie etwas haben, über das Sie sprechen möchten, aber nicht wollen die Person mit vielen Texten zu belästigen.

Keine Elektronik-Erfahrung? Kein Problem! Es gibt nur 3 Hauptschritte: Anschließen der Hardware, Hochladen des Codes und Erstellen der Blynk-App. Denken Sie jedoch daran: Was schief gehen kann, wird auch schief gehen. Planen Sie immer genügend Zeit für das Debuggen ein.

Wenn Sie genau das verwenden, was ich getan habe, und genau das hochladen, was ich habe, sollte es Ihnen gut gehen, auch wenn Sie noch nie mit Elektronik gearbeitet haben. Auch wenn Sie Anpassungen am Projekt vornehmen, sollte Ihnen das Lesen dieses Tutorials einen Eindruck davon vermitteln, was Sie ändern müssen, wenn Sie dies als Leitfaden verwenden. Die Kosten wurden auch so niedrig wie möglich gehalten: Die Gesamtkosten betragen, wenn Sie absolut keine der Komponenten haben, maximal ~40 USD pro Lampe.

Schritt 1: Materialien

Dies sind die Materialien, die Sie für EINE Lampe benötigen (multiplizieren Sie mit der Anzahl der Lampen, die Sie herstellen möchten):

  • 1x NodeMCU ESP8266-Chips (je 7 $, 13 $ für 2)
  • 1x Protoboard oder Steckbretter (~ 1 $ pro Stück)
  • Lötkolben und Lötzinn
  • 1x Neopixel-Ringe (jeweils 10 USD, 8 USD, wenn Sie bei adafruit.com kaufen)
  • 1x 5V-Netzteil (mindestens 500mA Ausgang, also 1A oder 2A perfekt) mit microUSB-Anschluss (oder Barrel-Buchse, aber kaufen Sie einen Barrel-Jack-Konverter zu blanken Drähten) (jeweils 8 US-Dollar)
  • Nicht unbedingt erforderlich, aber DRINGEND zum Schutz der Schaltung empfohlen (jeweils nur wenige Cent, aber möglicherweise müssen Sie in großen Mengen kaufen)

    • 1x 300-500Ohm Widerstand (ich habe 200Ohm verwendet und bin damit durchgekommen)
    • 1x 100-1000uF Kondensator
  • elektrisches Kabel (oder Sie erhalten diese Bandtypen) (einadrig ist am besten) (ein paar Cent für 5 )

    Sie brauchen nicht so viel Draht; nur 5" reichen aus

  • Sie können mit der Außenleuchte machen, was Sie wollen (oben sind Teile nur für die Elektronik). Ich ging mit lasergeschnittenem Holz und Acryl, mit Skizzenbuchpapier zur Lichtstreuung.

Ich habe oben Amazon-Links für die günstigsten Optionen angehängt, die ich finden konnte (Stand 20. Dezember 2018), aber Sie können Komponenten definitiv an verschiedenen Orten billiger finden. Ich bin immer noch ein Universitätsstudent, also hatte ich Zugang zu Kondensatoren und Widerständen: Versuchen Sie, Freunde zu fragen, die mit Elektronik arbeiten. Neopixel können bei adafruit.com günstiger gekauft werden, wenn Sie andere Dinge dort bestellen möchten (um Versandkosten zu sparen…). Sie können die Widerstände und Kondensatoren auch viel billiger von DigiKey oder Mouser erhalten, obwohl der Versand möglicherweise höher ist. Für die Stromversorgung reicht ein altes Telefonladegerät aus (oder nur das microUSB-Kabel, wenn Sie die Lampe an einen USB-Anschluss statt an eine Steckdose anschließen möchten). Wenn Sie absolut keine dieser Komponenten haben, betragen Ihre Kosten maximal ~ 40 USD pro Lampe (und weniger pro Lampe, je mehr Sie herstellen, da Sie diese Komponenten normalerweise in großen Mengen kaufen: Protoboard kann zum Beispiel in 5er-Packs geliefert werden). Ich hatte Sachen herumliegen, also waren es nur 5 Dollar für mich (ja, ich horte mit Freunden, die zufällig viele Dinge loslassen – und ich habe Neopixelringe vom letzten Mal wiederverwendet).

Arduino-Code und Adobe Illustrator-Dateien (für die Lasercut-Box) sind unten angehängt.

Schritt 2: Übersicht: Wie die Lampen funktionieren

Okay, sobald Sie die Materialien haben, fragen Sie sich vielleicht, wie sie alle zusammenkommen. Hier ist eine Erklärung:

Die NodeMCU ESP8266 ist ein Mikrocontroller, der mit 3,3-V-Logik arbeitet (im Gegensatz zu 5V-Logik wie die meisten Arduinos). Es enthält einen integrierten WLAN-Chip und GPIO-Pins zur Verwendung digitaler und analoger Signale mit Komponenten, die Sie anschließen. Sie verwenden einen der Pins, die PWM-Signale ausgeben können (siehe Pinbelegung hier: Jeder Pin mit dem ~ daneben kann die analogen Signale erzeugen, im Gegensatz zu digitalen Signalen von nur 0 oder 1, LOW oder HIGH), um die zu steuern Neopixel-Ring. Um es zu programmieren, können Sie dies einfach über die Arduino IDE tun, die hier leicht heruntergeladen werden kann. (Beachten Sie, dass ich den Adafruit-Leitfaden zu ihrem ESP8266 HUZZAH anstelle des NodeMCE-Leitfadens bereitgestellt habe, den wir haben. Der Leitfaden gilt weiterhin für beide Boards, aber Sie müssen nur ein anderes Board zum Hochladen in Arduino auswählen.)

Der Neopixel-Ring erzeugt die farbigen Animationen der Lampe. Es verfügt über adressierbare LEDs in der Ringformation, die jeweils einzeln angesteuert werden können. Es läuft normalerweise mit 5V-Logik, die normalerweise eine Pegelverschiebung erfordert (hier erklärt), aber zum Glück wurde die Adafruit-Neopixel-Bibliothek aktualisiert, um den ESP8266 zu unterstützen. Während 5V-Komponenten nicht so zuverlässig auf 3,3V-Signale reagieren, funktioniert es ziemlich zuverlässig, wenn das Neopixel mit einer niedrigeren Spannung betrieben wird (also 3,3V statt 5V). Details dazu finden Sie hier.

In Bezug auf die Verbindung vom Mikrocontroller zum Neopixel ist es am sichersten, einen 300-500 Ohm Widerstand zwischen die Datenleitung des Neopixels und den GPIO-Pin zu legen, von dem Sie Signale senden (um die LEDs vor plötzlichen Überspannungen zu schützen). Sie sollten auch einen 1000uF-Kondensator hinzufügen, der parallel zu den Strom- und Erdungskabeln des Neopixel-Rings geschaltet ist: Dies dient zum Schutz vor plötzlichen Stromstößen. Lesen Sie dies für weitere Best Practices zur Verwendung dieser LED-Ringe (und hier für das vollständige Benutzerhandbuch von Adafruit).

Für die Anbindung an die Blynk IoT-Plattform verfügt Arduino über eine Bibliothek zur Verwendung von Blynk. Sie können die Dokumentation hier lesen, um mehr über die Verwendung von Blynk im Allgemeinen zu erfahren. Für den Einstieg war dies eine praktische Anleitung speziell für NodeMCU ESP8266 und Blynk.

Machen Sie sich keine Sorgen, wenn einige dieser Dinge keinen Sinn ergeben! Die zukünftigen Schritte werden genau beschreiben, was Sie hochladen, herunterladen, verbinden usw. Lesen Sie alles durch (ja, es ist ein langes Tutorial, aber überfliegen Sie zumindest), bevor Sie mit dem Bauen beginnen!!! Es hilft Ihnen herauszufinden, wie die Dinge zusammenkommen, anstatt nur blind Anweisungen zu befolgen.

Schritt 3: Hardware

Bild
Bild
Bild
Bild

Schließen Sie zunächst Ihre Hardware wie in den Abbildungen oben gezeigt an. Das Neopixel sollte mit Löchern zum Löten von Drähten zu Ihnen kommen. Sie müssen zuerst Drähte an die Löcher mit der Bezeichnung PWR (Strom), GND (Masse) und IN (Eingang für analoge Signale) löten, bevor Sie die Drähte an die 3,3-V-, Masse- und D2-Pins des ESP8266 anschließen (siehe dies für die Pinbelegung).. Als Faustregel gilt, rotes Kabel ist für die Stromversorgung, schwarze Kabel zeigen Masse an und ich verwende gerne Blau für die Datenleitung des Neopixels (verbunden mit dem D2-Pin, der PWM-Signale unterstützt).

Achten Sie darauf, den Kondensator in der richtigen Richtung anzuschließen: Der Kondensator hat Polarität, dh es spielt keine Rolle, welche Seite Sie parallel zu Masse und Strom des Neopixels anschließen. Wenn Sie sich Ihren 1000uF-Kondensator ansehen, befindet sich an der Seite ein grauer Streifen, der die negative Seite des Kondensators anzeigt (Sie können es auch im obigen Fritzing-Diagramm sehen). Dies ist die Seite, die parallel zur Masse des Neopixels angeschlossen werden sollte. Der Widerstand hat keine Polarität, sodass Sie sich keine Gedanken über die Richtung machen müssen.

Um eine feste Verbindung herzustellen, verwenden Sie am besten ein Protoboard, damit Sie die Komponenten zusammenlöten können, anstatt nur die Drähte in ein Steckbrett zu stecken und zu riskieren, dass sie herauskommen. Ich habe ein Steckbrett verwendet, weil ich wenig Zeit hatte, aber auch hier ist Protoboard vorzuziehen. Das Schöne an dem Steckbrett ist, dass es eine klebrige Rückseite hat, also habe ich einfach den Aufkleber abgezogen, um alles auf meinen Lampensockel zu kleben. Für das Protoboard können Sie es mit den 4 Löchern, die sie normalerweise an den Ecken haben, in die Basis schrauben oder es einfach abkleben / kleben.

Schritt 4: Arduino-Code

Der.ino Arduino-Code ist am Ende dieses Schrittes als Referenz angehängt. Es sieht lang und wortreich aus, aber keine Sorge: Vieles davon beinhaltet Kommentare, um alles zu erklären. Ich überspringe auch gerne Zeilen, um Leerzeichen zum Unterscheiden von Abschnitten hinzuzufügen, wodurch der Code länger aussieht.

Hauptteile, die an Ihren Code angepasst werden müssen:

  • Blynk-Autorisierungs-Token/-Code (wird Ihnen von Blynk per E-Mail zugesendet, wenn Sie ein Gerät in der App erstellen: siehe nächste Seite für weitere Informationen)

    Sie benötigen für jede Lampe einen eigenen Autorisierungscode

  • WLAN-Domainname (zwischen den beiden Apostrophen")
  • WLAN-Passwort (zwischen den beiden Apostrophen")

Abgesehen davon, solange Sie meine genaue Blynk-App und die gesamte Hardware verwenden (verwenden Sie also im nächsten Schritt meine genaue Blynk-App-Konfiguration, haben Sie 12 LEDs in Ihrem Neopixel-Ring, verwenden Sie den D2-Pin des ESP8266 für die Neopixel-Datenleitung usw.), Sie müssen nur diesen Code genau auf Ihren ESP8266 hochladen. Beachten Sie, dass Sie für jede Ihrer Lampen unterschiedliche Autorisierungscodes verwenden müssen! Auf der nächsten Seite erfahren Sie, wie Sie separate Geräte hinzufügen und diese Codes erhalten. Vergessen Sie nicht, die WLAN-Domäne und das Passwort auch der Lampe zuzuordnen, wenn sie sich an verschiedenen Orten befinden. Sie möchten wahrscheinlich andere Dinge bearbeiten, je nachdem, welche Animationen und Farben Sie möchten, oder vielleicht sogar welche Pins Sie verwenden. Ich habe den Code kommentiert, um Ihnen zu helfen, Dinge nach Bedarf zu ändern. (Lesen Sie auch den Strandtest-Beispielcode der Adafruit Neopixel-Bibliothek für Ideen).

Bevor Sie den Code verwenden können, müssen Sie die Bibliotheken herunterladen, die der Code verwendet (die am Anfang des Codes). Lesen und befolgen Sie diese Anleitung von Adafruit (beginnen Sie bei "Using Arduino IDE"), um zu erfahren, was Sie tun müssen, um den ESP8266 einzurichten. Ja: Sie müssen den CP2104-Treiber installieren, zu den zusätzlichen Board-Manager-URLs in den Arduino-Einstellungen hinzufügen, das ESP8266-Paket installieren (gehen Sie zu Skizze> Bibliothek einschließen> Bibliotheken verwalten … und suchen Sie nach dem, was Sie benötigen - siehe Bild unten), und installieren Sie auch die anderen Bibliotheken oben im Code für Neopixel, Blynk usw.

Bild
Bild

Um Code von der Arduino-IDE auf den ESP8266-Chip hochzuladen, müssen Sie das richtige Board (NodeMCU ESP8266 ESP-12E), die Flash-Größe, den Port usw. auswählen (siehe Bild unten). Der richtige Port SLAB_USBtoUART wird nicht angezeigt, es sei denn, Sie schließen den ESP8266 an Ihren Computer an. Aber sobald es angeschlossen ist und Sie sicher sind, dass Sie Ihre Schaltung im vorherigen Schritt richtig angeschlossen haben, können Sie fortfahren und den Pfeil in der oberen linken Ecke drücken, um Ihren Code auf die Platine hochzuladen. Ja, es dauert länger als Ihr üblicher Upload-auf-Arduino-Prozess. Sie werden sehen, wie der Code langsam kompiliert wird, dann eine Reihe von orangefarbenen Punkten ……………… beim Hochladen (angezeigt im unteren schwarzen Teil des Arduino-Fensters).

Bild
Bild

Nun, hier ist eine Aufschlüsselung für den Code. Der erste Abschnitt enthält Bibliotheken, die von den Funktionen verwendet werden, und initialisiert globale Variablen (Variablen, auf die von jeder Funktion im Code zugegriffen werden kann). Die BLYNK_WRITE(virtualPin)-Teile steuern, was passiert, wenn die Widgets in der Blynk-App (die mit virtuellen Pins verbunden sind) umgeschaltet (d. h. ein- / ausgeschaltet, Schiebereglerpositionen geändert) werden. Es gibt 7 davon für die 7 virtuellen Pins, die ich in meiner Blynk-App verwende. Im nächsten Abschnitt von void colorWipe(), rainbow() usw. werden Funktionen definiert, die der Rest des Codes verwendet. Diese Funktionen sind größtenteils dem Neopixel-Bibliotheks-Beispielcode von Adafruit (insbesondere Strandtest) entlehnt. Die letzten Teile sind Ihr Standard-Void setup () und void loop (), die in allen Arduino-Code enthalten sind: void setup () definiert Operationen, die nur einmal ausgeführt werden, wenn das Board eingeschaltet ist, und void loop () definiert Operationen, die das Board kontinuierlich durchschleift, wenn es mit Strom versorgt wird. void loop() definiert hauptsächlich, welche Animation die Lampe durchläuft, basierend auf der Variablen "animation", die ich erstellt habe.

Schritt 5: Blynk IoT

Blynk IoT
Blynk IoT
Blynk IoT
Blynk IoT
Blynk IoT
Blynk IoT

Ich habe Blynk über Adafruit IO für diese Lampe der Version 2.0 gewählt. Adafruit IO ist großartig, aber es gab zwei Dinge, die Blynk im Gegensatz zu Adafruit IO hatte: eine App-Oberfläche und die Möglichkeit, "leer" als WLAN-Passwort zu akzeptieren (wenn Sie sich also mit einem öffentlichen WLAN verbinden, das kein WLAN hat? ein Passwort, können Sie den Passwort-Bereich leer lassen, also nur ""). Meine Freundin geht oft zur Behandlung ins Krankenhaus, also wollte ich diese Möglichkeit haben, wenn sie Übernachtungen hat, aber virtuelle Gesellschaft möchte: Sie könnte sich im Krankenhaus immer noch mit dem WLAN verbinden.

Rufen Sie zunächst den Google Play Store oder den App Store des iPhones auf, um die Blynk-App auf Ihr Telefon herunterzuladen. Erstellen Sie kostenlos ein Konto und erstellen Sie ein neues Projekt. In der oberen rechten Ecke sehen Sie eine QR-Code-Scanner-Schaltfläche: Verwenden Sie diese, um den QR-Code im Bild unten zu scannen, um alle meine Schaltflächen usw. in das neue Projekt zu kopieren. Auf dieser Seite erfahren Sie mehr darüber, wie dies funktioniert ("Teilen Sie die Konfiguration Ihres Projekts"). Diese Seite bietet auch nützliche Informationen, um das Projekt später mit dem Empfänger Ihrer Lampe zu teilen.

Bild
Bild

Natürlich können Sie die Schaltflächen nach Belieben anpassen! Wischen Sie nach rechts, um anzuzeigen, welche Widgets Sie hinzufügen können. Sie sollten jedoch verstehen, welche Optionen Sie für die Widgets haben: Ich habe oben in diesem Schritt Bilder (mit Anmerkungen in jedem Bild) der Einstellungen der Schaltflächen und Vorschläge zu deren Verwendung angehängt.

Das Hinzufügen von Widgets kostet übrigens Punkte in der App, und jeder startet mit einem bestimmten Betrag kostenlos. Das Hinzufügen zusätzlicher Punkte kostet Geld ($2 für 1000 zusätzliche Punkte). Am Ende habe ich 1000 Punkte hinzugefügt, damit meine Konfiguration funktioniert, aber Sie können einfach ein oder zwei Schaltflächen entfernen, damit es mit dem kostenlosen Betrag funktioniert.

Im Projekt müssen Sie die Mutterntaste oben links (neben der dreieckigen Schaltfläche "Play") drücken, um auf die Projekteinstellungen zuzugreifen.

Bild
Bild

Sie müssen dem Projekt Geräte hinzufügen, um Autorisierungs-Token / -Codes für jede Lampe zu erhalten, die Sie wie zuvor erwähnt im Arduino-Code ändern. Drücken Sie den Rechtspfeil Geräte, um neue Geräte zu erstellen. Wenn Sie ein Gerät erstellen, sehen Sie sein Token wie in der Abbildung unten (rot verschwommen).

Bild
Bild

Sobald Sie den Code haben, denken Sie daran, den richtigen Token, die richtige WLAN-Domäne und das richtige Passwort in den Arduino-Code für jede Lampe einzugeben. Sie sollten wahrscheinlich zuerst Ihre eigenen WLAN-Anmeldeinformationen eingeben, um sicherzustellen, dass jede Lampe ordnungsgemäß funktioniert, und bei Bedarf debuggen, aber dann mit der WLAN-Domäne und dem Passwort Ihres Empfängers aktualisieren, bevor Sie sie versenden.

Stellen Sie sicher, dass Sie die App einschalten, um Ihre Tasten tatsächlich zu verwenden! Wenn die App "an" ist (drücken Sie die Play-Taste in der oberen rechten Ecke, neben der Nut-Taste für Einstellungen), wird der Hintergrund statt des gepunkteten Rasters, das Sie im Bearbeitungsmodus sehen, durchgehend schwarz. Wenn Sie den Arduino-Code auf Ihren ESP8266 hochgeladen und angeschlossen haben, sollte sich der Chip automatisch mit dem WLAN verbinden. Überprüfen Sie dies, indem Sie auf das kleine Mikrocontroller-Symbol in der oberen rechten Ecke drücken (nur sichtbar, wenn die App eingeschaltet ist): Sie sollten eine Liste der Geräte sehen, die Sie für das Projekt erstellt haben und welche online sind.

Bild
Bild

Schritt 6: Lampenabdeckung

Für die eigentliche Lampe ging ich mit lasergeschnittenem Holz (1/8 "Birkensperrholz) und Acryl (transparent, 1/4", für die Unterseite, damit das Licht durchscheint). Das Holz hatte Ausschnitte, die für meinen Freund und mich einzigartig waren, aber ich habe Adobe Illustrator-Dateien für die Puzzleteile-Gesichtsdesigns (ergibt einen 4-Zoll-Würfel) angehängt, damit Sie sie ausschneiden können, wenn Sie die Form mögen (Dateien sind an diesen Schritt angehängt, unten). Achtung: Die Unterseite muss 1/4" dick sein, damit die Teile in diesen Dateien zusammenpassen. Wenn Sie eine andere Größe herstellen oder alles mit einer Dicke haben möchten, verwenden Sie makercase.com, um Dateien zum Laserschneiden einer Schachtel zu generieren.

Bild
Bild
Bild
Bild

Vergessen Sie nicht, ein Loch zu hinterlassen, damit das Netzkabel aus der Lampe herauskommt. Ich habe vergessen, es aufzunehmen, konnte aber mit Drahtschneidern ein kleines dreieckiges Loch durch das 1/8 Holz schneiden.

Schritt 7: Lampen mit Empfängern teilen

Wenn Sie die Lampe an Ihren Empfänger senden, muss dieser außerdem die Blynk-App aus dem Google Play Store oder dem App Store von Apple auf sein Telefon herunterladen, um die Lampe zu steuern. Sie können entweder ein separates Konto erstellen oder dasselbe Login verwenden. Wenn sie ein separates Konto erstellen, können Sie einen speziellen QR-Code für andere freigeben, der für 1000 Punkte verwendet wird (NICHT den, den ich im vorherigen Blynk-Schritt geteilt habe; dieser QR-Code ermöglicht die Verwendung derselben App wie Sie, aber sie können Ändern Sie keine der Tasteneinstellungen oder -konfigurationen - lesen Sie diese Seite durch, insbesondere "Zugriff auf Ihre Hardware freigeben"). Sie müssen sicherstellen, dass Sie die App einschalten (drücken Sie die Play-Taste in der oberen rechten Ecke, damit Sie die Mikrocontroller-Taste anstelle der Nuss-Einstellungstaste sehen), damit andere die App verwenden können.

Ich habe ungefähr die 1000 Punkte gekostet, indem ich meiner Freundin meine Zugangsdaten gegeben habe, damit sie sich über mein Konto in die App einloggen konnte. Wenn Sie diese Lampen an Leute schicken, die nicht so gut mit Elektronik umgehen (im Allgemeinen ältere Leute), würde ich empfehlen, die 2 Dollar auszugeben, um einen gemeinsamen Link zu erstellen, damit sie keinen Zugriff auf Ihr Konto haben und können. Bringen Sie Ihre App-Einstellungen nicht durcheinander. Mit dieser QR-Option (1000-Punkte-Kosten) haben sie immer noch einen Klon Ihrer App, können aber nichts ändern.

Schritt 8: Verwenden der App

Wie können Sie nun die App verwenden, um die Lampen zu steuern?

Schalten Sie die Lampe mit dem großen Power-Knopf ein und aus (rot wenn aus, grün wenn an). Wenn die Lampe ausgeschaltet ist, schaltet sie automatisch alle anderen Tasten in der App aus und setzt RGB auf 0, 0, 0. Wenn Sie drücken, um die Lampe wieder einzuschalten, beginnt die Lampe mit pulsierendem Weiß.

Oben rechts befinden sich die drei RGB-Schieberegler, um die RGB-Farbausgabe beim Blinken der Lampen zu steuern. Sie aktualisieren die Farbe in Echtzeit, während Sie die Schieberegler anpassen. Sie können die Farbe auch mit der zebraförmigen Farbkarte unten in der App anpassen. Dies ist mit den RGB-Schiebereglern verbunden, sodass die Schieberegler basierend auf der Farbe, die Sie in der Karte auswählen, aktualisiert werden und umgekehrt. Diese Karte ist hilfreich, wenn Sie einen bestimmten Farbton haben, aber die entsprechenden RGB-Zahlenwerte nicht kennen.

Auf der linken Seite der App befinden sich Schaltflächen mit voreingestellten Animationen für fröhlich, wütend, traurig und meh. "Happy" lässt die Lampe durch die Regenbogenfarben blinken, "wütend" lässt die Lampe zwischen Rot und Gelb blinken, "sad" lässt die Lampe durch Blau und Himmelblau blinken und "meh" lässt die Lampe einen rotierenden Regenbogen erzeugen Rad. Ich habe die Regenbogen-Animationen für Happy und Meh gewählt, da sie eher die standardmäßigen, alltäglichen Animationen sind. Jedes Mal, wenn Sie eine der voreingestellten Tasten drücken, werden alle anderen Tasten ausgeschaltet (d. h. wenn Sie auf "Happy" waren, aber "wütend" drücken, schaltete sich die Happy-Taste nach einigen Sekunden automatisch aus). Beachten Sie, dass das Umschalten von den Happy- und Meh-Animationen länger dauert, da die Lampe die volle Regenbogenanimation durchlaufen muss, bevor sie die Animation ändern kann. Wenn Sie eine der Voreinstellungstasten deaktivieren, blinkt die Lampe standardmäßig wieder, je nachdem, welcher Farbe die RGB-Schieberegler entsprechen. Wenn Sie eine der voreingestellten Animationen aktiviert haben, aber die RGB-Schieberegler ändern, passiert nichts: Die voreingestellte Animation dominiert.

Bevor Sie die Lampe ausstecken, drücken Sie als Faustregel den Ausschaltknopf in der App. Drücken Sie dann die Einschalttaste in der App, wenn Sie die Lampe wieder anschließen. Passen Sie die App-Tasten NICHT an, wenn eine der Lampen nicht eingeschaltet oder mit dem WLAN verbunden ist (nicht das Ende der Welt, aber es wird die Lampe durcheinander bringen Betrieb). Im nächsten Schritt erfahren Sie, warum…

Schritt 9: **WARNUNG FÜR DEN KORREKTEN BETRIEB**

Es gibt eine Lücke im Betrieb der Lampen. Die Blynk-Benutzeroberfläche ermöglicht es mir nicht, selektiv zu steuern, was umgeschaltet werden kann, wenn etwas anderes ein- oder ausgeschaltet ist, aber ich füge Bedingungen in den Code ein, so dass, wenn Sie etwas umschalten, nicht umgeschaltet werden soll, wenn die Lampe ausgeschaltet ist oder eine andere Animation eingeschaltet ist, macht sich der Schalter selbst rückgängig: Das hat viel Debugging gekostet, aber es funktioniert ziemlich gut (demonstriert im Video oben: Die App lehnt Änderungen ab, die auftreten, wenn die Lampe ausgeschaltet ist, und wenn die voreingestellten Animationen eingeschaltet sind, werden alle Änderungen an die Schieberegler wirken sich nicht auf die Animation aus, bis die Voreinstellungsschaltfläche deaktiviert wird)!

Der einzige verbleibende Fallstrick ist, dass, wenn Sie Dinge in der App umschalten, wenn der Chip nicht mit dem Internet verbunden ist, diese automatische "Rückgängig"-Funktion nicht funktioniert und die Lampe nicht den Befehlen der App folgt. Wenn Sie die Lampe dann einschalten, spiegelt sie nicht genau wider, was Sie tun (egal was, die Lampe beginnt mit weißem Blinken beim Einschalten). Um dies zu beheben, drücken Sie einfach den großen Ein-/Aus-Knopf: Ein Power-Zyklus setzt alles in der App zurück, damit die Lampe wie erwartet funktioniert.

Lange Rede, kurzer Sinn: Wenn Sie die Lampe starten, führen Sie einfach einen Power-Cycle des Power-Buttons in der App durch, um alles zurückzusetzen. Tun Sie dies einfach, wenn Sie die Lampe jemals ausstecken oder die App verwenden, wenn die Lampe nicht eingesteckt ist (oder wenn die Lampe plötzlich nicht richtig reagiert, selbst wenn Sie ihr Zeit zum Reagieren geben, vielleicht wenn Ihr WLAN zufällig getrennt wird)

Schritt 10: Fertig

Und das ist ein Wrap! Es ist ein schönes Geschenk für jeden, mit dem Sie eine Fernbeziehung teilen: Machen Sie eins für Ihre Eltern, bevor Sie zum College gehen oder für Ihren neuen Job in einen anderen Bundesstaat ziehen, machen Sie eins für Ihre Großeltern, wenn Sie weniger Zeit haben, sie zu besuchen, machen Sie eine, um Ihre SO-Gesellschaft bei der Arbeit zu halten usw.

Hier sind einige zusätzliche Variationen, die Sie tun könnten:

  • Sie könnten durch mehrere Farben (Rot-Orange-Gelb) anstelle des verblassten Pulsierens blitzen, das ich habe

    • Haben Sie die Farbsteuerung für diese mehreren Blitze (erstes Rot, zweites Orange, drittes Gelb), anstatt nur helle und dunkle Versionen desselben Farbtons zu blinken
    • Dafür würden Sie eine separate Farbkarte oder eine Reihe von Schiebereglern hinzufügen, um die Farben zu steuern, die jede Animation durchläuft (also anstelle von immer rot-orange-gelb, individuell steuerbar, so dass Sie blaugrünes Rosa-Weiß, Grün-Lila-Blau usw. haben)
  • Es gibt andere Animationstypen, die Sie im Beispielcode für den Adafruit Neopixel-Strandtest ausprobieren können, wie die Option theaterChase.
  • Wenn Sie ein Lautsprecher-Breakout-Board hinzufügen möchten, können Sie auch eine Musikoption für Ihre Lampen haben. Vielleicht lassen Sie sie zu verschiedenen Anlässen unterschiedliche Musik spielen. Oder statt Musik Sprachnachrichten.

Viel Spaß beim Anpassen der Lampen! Bei Fragen oder Anmerkungen können Sie mir gerne eine Nachricht senden.

Empfohlen: