Inhaltsverzeichnis:

Easy LED Holiday Light Show: Zauberer im Winter - WS2812B LED-Streifen mit FastLED und einem Arduino-Tutorial - Gunook
Easy LED Holiday Light Show: Zauberer im Winter - WS2812B LED-Streifen mit FastLED und einem Arduino-Tutorial - Gunook

Video: Easy LED Holiday Light Show: Zauberer im Winter - WS2812B LED-Streifen mit FastLED und einem Arduino-Tutorial - Gunook

Video: Easy LED Holiday Light Show: Zauberer im Winter - WS2812B LED-Streifen mit FastLED und einem Arduino-Tutorial - Gunook
Video: АСМР 🏆🔥[Гарри Поттер и Кубок огня] [Глава 20-29] Чтение шепотом 📚 ASMR whisper [Harry Potter] 2024, November
Anonim
Image
Image

Ich habe diese Weihnachtslichtshow entworfen und programmiert, um sie überall anzuzeigen. Ich habe einen WS2812B LED-Streifen mit einer Pixeldichte von 30 Pixeln / Meter verwendet. Da ich 5 Meter verwendet habe, hatte ich insgesamt 150 LEDs. Ich habe den Code einfach gehalten, damit jeder, der mit WS2812B LED-Streifen neu ist, dem Code leicht folgen kann. Dies bedeutet auch, dass das Timing deaktiviert ist, wenn Sie unterschiedliche Pixelzahlen verwenden, sodass Sie bei 150 LEDs bleiben sollten. Um es einfach zu halten, wird das Musiksystem überhaupt nicht vom Arduino verwaltet. Zu Beginn des Programms blitzen 3x grün und 1x rot auf, dann beginnt die eigentliche Lichtshow. Da Sie die Musik manuell starten müssen, geben Ihnen diese anfänglichen Blinksignale einen Hinweis darauf, wann Sie mit der Musikwiedergabe beginnen müssen. Ich habe den Code unten eingefügt. Fühlen Sie sich frei, diesen Code für nicht-kommerzielle Zwecke zu ergänzen oder zu ändern.

Lieferungen

- WS2812B LED-Streifen

- Arduino

- Drähte

- 5V 10A Netzteil | Wenn Sie mehr als einen Streifen verwenden, müssen Sie ein größeres Netzteil verwenden. Jedes Pixel verbraucht 60mA, also 150 Pixel * 60mA = 9A. Ihr Netzteil muss dies können, wenn Sie die volle Helligkeit bei Weiß nutzen möchten. Sie müssen ein 5-V-Netzteil verwenden, wenn Sie 5-V-LED-Streifen verwenden, und wenn Sie 12-V-LED-Streifen verwenden, müssen Sie ein 12-V-Netzteil verwenden, aber auch einen 12-5-V-Konverter verwenden, um das 5-V-Arduino mit Strom zu versorgen.

Schritt 1: Laden Sie die FastLED-Bibliothek herunter

Definieren Sie ein paar Variablen
Definieren Sie ein paar Variablen

Wenn Sie die FastLED-Bibliothek noch nicht heruntergeladen haben, laden Sie die neueste Version von github.com/FastLED/FastLED/releases. herunter

Laden Sie die FastLED-Bibliothek herunter und verschieben Sie sie in Ihren Arduino-Bibliotheksordner. Ändern Sie NICHT den Namen dieses Ordners. Gehen Sie in der Arduino IDE zu Sketch, Include Library und dann Add. ZIP Library. Wählen Sie den FastLED-Ordner aus.

Wenn Ihre Bibliothek eingerichtet ist, fügen Sie die Zeile #include ein. Diese Zeile teilt dem Programm mit, dass Sie diese Bibliothek verwenden.

Schritt 2: Definieren Sie einige Variablen

Wie ich bereits erwähnt habe, ändert sich, um den Code einfach zu halten, das Ändern der Pixelanzahl das Timing oder die Lichtshow.

In der Zeile #define NUM_LEDS 150 geben Sie die Anzahl der verwendeten Pixel ein. In diesem Fall sind es 150.

In der Zeile #define DATA_PIN 5 setzen Sie den digitalen Pin, an den Sie das Datenkabel angeschlossen haben.

In der Zeile #define BRIGHTNESS 255 setzen Sie die Helligkeit auf einer Skala von 0-255, wobei 255 die hellste ist.

Schritt 3: Der Setup-Abschnitt des Codes

Der Setup-Abschnitt des Codes
Der Setup-Abschnitt des Codes

Im Setup-Bereich gibt es eine Verzögerung von 2 Sekunden und die Leitung

FastLED.addLeds(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);

WS2812B gibt den von uns verwendeten LED-Streifentyp an und DATA_PIN ist die Variable, die wir in einem vorherigen Schritt definiert haben. GRB ist die Farbreihenfolge. Dies kann je nach verwendetem LED-Streifen variieren. Probieren Sie den Code so aus, wie er ist, und wenn die Farben nicht mit denen im Video übereinstimmen, ändern Sie dies beispielsweise in RGB oder BRG. Den Rest dieser Zeile können Sie gleich lassen. Die Linien

FastLED.setBrightness (max_bright); set_max_power_in_volts_and_milliamps(5, 8000);

Begrenzen Sie den Stromverbrauch des LED-Streifens. Dies ist eine erstaunliche Funktion aus der FastLED-Bibliothek. Die Zahl 5 ist die Spannung, die wir verwendet haben, und die Zahl 8000 ist der maximale Strom, den der LED-Streifen in mA verwenden kann. Es wird empfohlen, nur 80 % der Leistung des Netzteils zu nutzen, um seine Lebensdauer zu verlängern. Da ich ein 10A Netzteil habe, 0,8*10 = 8A oder 8000mA.

Schritt 4: Der Loop-Bereich | Aka, der coole Teil des Codes

Der Loop-Bereich | Aka, der coole Teil des Codes
Der Loop-Bereich | Aka, der coole Teil des Codes
Der Loop-Bereich | Aka, der coole Teil des Codes
Der Loop-Bereich | Aka, der coole Teil des Codes

Nachdem wir nun mit dem Einrichten des Programms für unseren speziellen LED-Streifen fertig sind, können wir uns daran machen, dass die Streifen tatsächlich aufleuchten. Damit dieser Abschnitt sauber aussieht, habe ich geschriebene Funktionen verwendet, um die Streifen zu steuern und verschiedene Effekte zu erzielen. Das obige Bild links ist Teil des Loop-Bereichs, der die Funktionen ausführt. Das Bild rechts ist darunter und dort habe ich geschrieben, was jede Funktion macht.

Schritt 5: Verkabelung

Verdrahtung
Verdrahtung

Die WS2812B LED-Streifen haben an jedem Ende 3 Anschlüsse. 2 für die Stromversorgung und 1 für das Datensignal von unserem Arduino. Verbinden Sie einfach 2 Drähte mit den Stromanschlüssen des Arduino und verbinden Sie 2 Stromkabel mit dem LED-Streifen. Sie sollten auch 2 Stromkabel, die als Stromeinspritzkabel bezeichnet werden, am Ende des Streifens hinzufügen, da ein Spannungsverlust zu schwachen LEDs am Ende des Streifens führen kann, wenn Sie dies nicht tun. Überprüfen Sie die Etiketten auf dem Streifen, um zu sehen, welcher Anschluss wofür ist. Ein Vertauschen der Polarität kann zu einem frittierten Streifen führen. Verbinden Sie auch das Erdungskabel des Arduino mit dem Erdungskabel des LED-Streifens, um eine gemeinsame Masse für eine bessere Datenübertragung herzustellen. Ich habe erwähnt, dass Sie Stromeinspeisungskabel hinzufügen sollten, aber Sie können dies NICHT für das Datenkabel tun. Dies liegt daran, dass jede LED das Datensignal an die nächste weiterleitet. Stellen Sie also sicher, dass Sie 1 Datenkabel mit dem angegebenen Arduino-Pin und dem LED-Streifen verbinden. Der Streifen sollte einen kleinen Pfeil haben, der die Richtung der Datenübertragung anzeigt. Stellen Sie sicher, dass das Datensignalkabel am Anfang und nicht am Ende liegt. Wenn Sie dies vermischen, kann dies zu einem frittierten Streifen führen.

Schritt 6: Montage des LED-Streifens

Ich habe meinen LED-Streifen an der Innenseite eines Fensters montiert, indem ich ihn einfach aufgeklebt habe. Es gibt jedoch viele andere Möglichkeiten, wie Sie Ihren LED-Streifen montieren können. Sie können einen Aluminiumkanal wie https://tinyurl.com/s2km4v3 verwenden, um die Streifen außen auf Ihrer Dachlinie zu platzieren. Wenn Sie Ihre LED-Streifen draußen platzieren, empfehle ich die Verwendung der ip65-Streifen, wenn Sie einen Aluminiumkanal verwenden, da sie halb wasserdicht und dünner sind als der 1p67, der möglicherweise nicht in einige Kanäle passt. Wenn Sie diese draußen ohne Kanal montieren möchten, verwenden Sie die praktisch wasserdichten IP67-Streifen. Um um eine Ecke zu gehen, wie die an den Spitzen Ihrer Dachlinie, sollten Sie idealerweise den Streifen schneiden und Drähte verwenden, um um die Ecke zu gehen. Möglicherweise können Sie den Streifen nur biegen, aber seien Sie vorsichtig, wie stark Sie ihn biegen, da eine LED leicht abspringen kann.

Empfohlen: