Inhaltsverzeichnis:

Smartphone-gesteuerte Bluetooth-LEDs (mit Live Music Sync) - Gunook
Smartphone-gesteuerte Bluetooth-LEDs (mit Live Music Sync) - Gunook

Video: Smartphone-gesteuerte Bluetooth-LEDs (mit Live Music Sync) - Gunook

Video: Smartphone-gesteuerte Bluetooth-LEDs (mit Live Music Sync) - Gunook
Video: Living Room ,,Intro'' Lightshow 2024, November
Anonim
Image
Image
Beschaffung von Materialien
Beschaffung von Materialien

Ich habe es schon immer geliebt, Dinge zu bauen, nachdem ich festgestellt hatte, dass mein neues Studentenwohnheim eine schreckliche Beleuchtung hatte, beschloss ich, es ein wenig aufzupeppen.

***WARNUNG*** Wenn Sie dieses Projekt in der gleichen Größenordnung wie mein Setup aufbauen, arbeiten Sie mit einer anständigen Menge an elektrischer Leistung. SEIEN SIE SICHER, verwenden Sie Ihren gesunden Menschenverstand, und wenn Sie sich nicht sicher sind, FRAGEN Sie! Riskieren Sie nicht, Ihr Haus niederzubrennen.

Schritt 1: Materialien beschaffen

Beschaffung von Materialien
Beschaffung von Materialien
Beschaffung von Materialien
Beschaffung von Materialien

Für dieses Projekt benötigen Sie:

  1. Adressierbare WS2812B LED-Streifen. 5V ist bei weitem der gebräuchlichste Typ und wird in diesem Projekt sehr bevorzugt. Dieses Projekt ist für RGB-LEDs konzipiert, nicht für RGBW. Ich kann NeoPixels von Adafruit wärmstens empfehlen. (~ 25 $ pro 60 LEDs)
  2. Ein CurieNano (noch verkauft), ein Arduino 101 (eingestellt, aber der, den ich verwende) oder ein anderer Mikrocontroller, der auf BLE zugreifen kann. (~ 35 $)
  3. Ein Smartphone (sowohl Apple als auch Android funktionieren)
  4. Ein Netzteil. Die meisten adressierbaren LEDs auf dem Markt sind 5V. Die benötigte Stromstärke hängt von der Größe Ihres Setups ab*. (~10-50 USD je nach Einrichtung)
  5. Verkabelung** (Sie benötigen möglicherweise auch die entsprechenden 3-poligen oder 2-poligen JST-Anschlüsse und Arduino-Pins) (~ 20-30 $)
  6. 2,1x5,5mm Hohlsteckerbuchsen finden Sie hier. (~$5)
  7. Ein kleiner Kreuzschlitzschraubendreher
  8. Lötkolben & Lötmittel (~ $ 20)
  9. Doppelseitiges Montageband (1/4 Zoll Breite). Ich benutze das. (~$10)
  1. (Empfohlen) Ein Mikrofon für die Musiksynchronisation. (Um eine funktionierende Musiksynchronisierung zu haben, müssen Sie eine haben) Sie können eine von Adafruit hier finden. (~$7)
  2. (Optional) Ein Arduino-Fall wie dieser. (~$10)
  3. (Optional) ein Kondensator von mindestens 10 μF (Dies schützt vor Spannungsspitzen beim ersten Einschalten Ihres Netzteils. Beachten Sie, dass einige der größeren, schickeren Netzteile möglicherweise bereits einen eingebauten Schutz haben.) (~ $ 5)

Ich empfehle Ihnen dringend, sich an die verlinkten Materialien auf dieser Liste zu halten, da ich sie den größten Teil des Tages, jeden Tag, monatelang ohne Ausfälle verwendet habe - insbesondere die LEDs. Andernfalls können Sie unerwartete Schluckaufe bekommen oder feststellen, dass Ihnen bestimmte spezifische Materialien oder Werkzeuge fehlen.

* Für extrem kleine Streifen (~ 30 Pixel oder weniger) oder Arduino hat genug Strom, um diese zu betreiben und Sie benötigen kein Netzteil. (DIESES WIRD FÜR DIESE ANLEITUNG NICHT EMPFOHLEN. Es gibt viele Anleitungen zum Aufbau kleiner, adressierbarer LED-Setups, die für Ihre Situation spezifischer sind.)

Die meisten von Ihnen werden jedoch wahrscheinlich eine Stromversorgung benötigen. Die Berechnung lautet (Ampere) = 0,075*(Anzahl der Pixel). Dies ist mit einer eingebauten Sicherheitsmarge (bei vollem Stromverbrauch wird Ihr Netzteil mit ~75% der Kapazität betrieben. Dies hält Ihr Netzteil kühl und somit über lange Zeiträume konstant). Wird dieser Wert deutlich unterschritten, besteht die Gefahr einer Überhitzung und sogar eines Brandes. Bei einigen Netzteilen müssen Sie auch Ihren eigenen Netzstecker anschließen. Für Displays, die mehrere Full-LED-Rollen verwenden, empfehle ich Ihnen dringend, Power Inject zu verwenden. Darüber wird im nächsten Abschnitt gesprochen.

** Bemessen Sie Ihren Draht richtig! SICHERHEIT ZUERST Wenn Sie ein paar zusätzliche Dollar ausgeben, können Sie Ihr Zuhause retten.

(Wenn Sie neugierig sind, verwende ich zwei 5-V-Netzteile mit jeweils zwei 30-A-Ausgängen und 12-Gauge-Lautsprecherkabel. Dadurch kann ich an vier Punkten entlang meines LED-Streifens ausreichend Strom einspeisen. Ich verwende ~ 21 Meter mit einer Dichte von 60 LEDs /Meter.)

Schritt 2: Strom

Leistung
Leistung
Leistung
Leistung
Leistung
Leistung
Leistung
Leistung

"loading="faul"

Image
Image
Modi und Abstimmung
Modi und Abstimmung
Modi und Abstimmung
Modi und Abstimmung
Modi und Abstimmung
Modi und Abstimmung

Es gibt zwei Modi, die an Startpunkten nach der Pixelnummer fragen: Modus 2 (Color Wipe) und Modus 12 (Music Sync). Wenn Sie viele LEDs haben, ist es ein enormer Aufwand, zu zählen, zu welchem Pixel genau Sie beginnen möchten, also habe ich ein Tool gebaut. Im letzten Punkt des Modusmenüs Ihrer BLYNK App finden Sie einen Modus namens "Pixel Finder". Um dies zu verwenden, müssen Sie wahrscheinlich Ihre Widget-Einstellungen ändern.

  • Stellen Sie zunächst sicher, dass Sie sich im Bearbeitungsmodus befinden
  • Wählen Sie den Schieberegler
  • Ändern Sie Ihre Helligkeitswerte so, dass die gesuchte Pixelzahl innerhalb des eingegebenen Helligkeitsbereichs liegt.

Wenn Sie diesen Pixelfinder-Modus verwenden, leuchtet die Pixelnummer Ihres Helligkeitswerts in Grün. Auf diese Weise können Sie schnell zu einem gewünschten Ort scrollen und die Pixelnummer von Ihrem Telefon ablesen

Sie können dies in den Bildern [5 und 6] und [7 und 8] sehen. (Sie werden vielleicht bemerken, dass ich in diesem Screenshot die Farbschieberegler anstelle von zeRGBra verwende). Beachten Sie auch, dass der Index des ersten Pixels 0 und nicht 1 ist.

Dies sollte Ihnen helfen, Ihre Muster dort einzurichten, wo Sie sie haben möchten.

Eine weitere Sache, die ich erwähnen sollte, ist, dass "Helligkeit" in den Modi Comet (Modus 10) und Music Sync (Modus 12) die Länge der "Schwänze" anpasst. So soll der Code funktionieren, da "Helligkeit" in diesen Modi nicht wirklich Sinn macht.

Schritt 7: Hurra! Sie sind fertig! (Lesen Sie weiter für Extras über den Code)

So verwenden Sie Ihre LEDs:

  • Seien Sie in Reichweite Ihres Arduino
  • Tippen Sie auf das BLE-Symbol
  • Finden Sie Ihr Gerät (Antwort für Gerätename) und wählen Sie es aus

Sie können nun Ihre Fernbedienung verwenden.

Genießen Sie all Ihre harte Arbeit!

****************************Erweitert (Über den Code)**************** ****************

Ich habe versucht, den Code gut kommentiert zu machen, er ist wahrscheinlich in keiner Weise optimiert, aber ich weiß, dass meine über 1200 Lichter schnell genug laufen. Im Inhaltsverzeichnis ist der Code nach Zeilennummer unterteilt.

Die Teile des Codes, die die Modi und die Benutzeroberfläche enthalten, sind ziemlich trennbar, technisch könnten Sie Bluetooth aufgeben und eine fest verdrahtete Schalttafel oder einen einfachen Timer verwenden, der alle Modi durchläuft. Sie müssen wirklich nur das cmdArr-Array ausfüllen, um Anweisungen zu geben.

  • Index 0 speichert Informationen über das Ein-/Ausschalten des Streifens,
  • Index 1 speichert die Modusnummer aus dem Menü
  • Die Indizes 2, 3 und 4 speichern jeweils die R-, G- und B-Werte aus dem Farbwähler.
  • Index 5 speichert prozentuale Helligkeit
  • Andere Indizes sind derzeit ungenutzt

Wie Sie viele bemerken, gibt es im Code viele Zeilen, die "SetPixelColorAdj(…" lesen, obwohl die Funktion einfach nur "setPixelColor(…") ist. Dies liegt daran, dass dies ein bisschen übrig gebliebener Code ist, der verwendet wird, um Teile des LED-Streifens herum abzubilden. Wenn Sie beispielsweise einen Streifen verwenden, um zwei Schleifen zu erstellen, wäre es mühsam, Muster mit einer Unterbrechung anzusprechen, bis die Schleife wieder in sich übergeht und spleißen Sie auch die Hauptschleife wieder zusammen, damit innerhalb des Codes intuitiv zu arbeiten ist.

Ich werde auch erklären, wie einige der komplizierteren Modi funktionieren. Einige davon (Rainbow, Color Wipe und Fade [1, 2, 3]) sind bereits als Beispielcode in der NeoPixel Library enthalten.

  • Lava, Canopy, Ocean [4, 5, 6] - Diese Modi verwenden die zuvor erwähnten Leitpunkte, jeder Leitpunkt erhält eine zufällige Farbe innerhalb eines ihm zugewiesenen Bereichs. Lava ist hauptsächlich rot, Canopy ist meistens grün und Ozean ist hauptsächlich blau. Das Fade-Pattern [3] bietet bereits einen großartigen linearen Fade-Algorithmus. Dies wird umfunktioniert, um mit den dazwischen liegenden Pixeln von der Farbe eines Führungspunkts zum nächsten zu überblenden, wodurch eine sanfte Schwankung entsteht. Die drei Fade-Arrays speichern die Schritte eines Zeit-Fades der Führungspunkte (die Start-, Übergangs- und Endzustände). Wenn die Führungspunkte mit der Zeit ausgeblendet werden, aktualisieren auch die Pixel in ihrer Nähe ihre Farben. Wenn ein Zeitzyklus abgeschlossen ist, wird der gerade erreichte Endpunkt zum neuen Startpunkt. Auf diese Weise bleibt das Muster in der Zeit glatt.
  • Color Wave [7] - Dies ist den vorherigen Modi ähnlich, aber die Farben für die Führungspunkte werden anders ausgewählt. Bei einer Grundfarbe liegt eine Abweichung vor, die im Laufe der Zeit im Farbkreis verblasst.
  • Glühwürmchen[8] - Das 2D-Array speichert Position und Richtung für 90 ausgewählte Glühwürmchen. Es entscheidet bei jedem Zeitschritt, ob sich ein Glühwürmchen nach links, rechts oder gar nicht bewegt. Ihre Gesamthelligkeit folgt einem Ein- und Ausblendzyklus.
  • Konfetti[9] - Sie können hier keine Teile von Firefly wiederverwenden, obwohl sie ähnlich erscheinen - das liegt daran, dass Sie eine insgesamt konsistente Helligkeit bevorzugen, um die Farbverschiebung am besten zu sehen. Die Idee ist jedoch nicht viel anders. Ich erreichte eine gleichmäßige Beleuchtung, indem ich 1/3 aller Konfetti-Funkeln 3 co-periodischen Sinusfunktionen zuordnete, die jeweils um 1/3 der Periode verschoben wurden.
  • Komet[10] - Sehr ähnlich dem Scanner von Adafruit, der Unterschied besteht darin, dass die Richtung jetzt jedes Mal zufällig generiert wird und sich nicht ändert Schwanz. Der Aufruf des Dimmens bei jedem Update erzeugt das Ausblenden oder den "Schwanz" des Musters.
  • Music Sync[12]- Zwei Parameter werden basierend auf der Lautstärke (Spannung von A0) berechnet: Eine Farbe und Länge. Die Musiksynchronisation blendet dann von einer mittleren Farbe auf die berechnete Farbe über und blendet gleichzeitig in der angegebenen Länge zu Schwarz über. Die mittlere Farbe verblasst sanft um den Farbkreis herum, sodass Sie sowohl auffällige Effekte als auch eine Glätte erhalten, damit sie nicht aufdringlich ist.

Bildnachweise

cdn.shopify.com/s/files/1/0176/3274/produc…

store-cdn.arduino.cc/usa/catalog/product/c…

cdn.mos.cms.futurecdn.net/aSDvUGkMEbyuB9qo…

images-na.ssl-images-amazon.com/images/I/6…

www.amazon.com/Speaker-GearIT-Meters-Theat…

www.powerstream.com/z/adapter-2-1-to-screw…

www.amazon.com/Hobbico-HCAR0776-Löten-…

images-na.ssl-images-amazon.com/images/I/7…

cdn-shop.adafruit.com/970x728/1063-03.jpg

cdn-learn.adafruit.com/assets/assets/000/0…

www.adafruit.com/product/2561

www.adafruit.com/product/2964?length=1

cdn.sparkfun.com//assets/parts/4/6/8/4/102…

www.holidaycoro.com/v/vspfiles/assets/image…

www.circuitspecialists.eu/5-volt-enclosed-s…

d3vs3fai4o12t3.cloudfront.net/media/catalo…

Empfohlen: