Inhaltsverzeichnis:

Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels) - Gunook
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels) - Gunook

Video: Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels) - Gunook

Video: Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels) - Gunook
Video: Late Night Coding - Raspberry Pi Pico 2024, November
Anonim
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)
Beste RGB-LEDs für jedes Projekt (WS2812, Aka NeoPixels)

Wenn wir mit LEDs arbeiten, möchten wir oft deren Zustand (ein/aus), Helligkeit und Farbe steuern. Es gibt viele, viele verschiedene Möglichkeiten, dies zu tun, aber keine ist so kompakt wie die WS2812 RGB-LED. In seinem winzigen 5 mm x 5 mm Gehäuse enthält der WS2812 3 superhelle LEDs (Rot, Grün und Blau) und eine kompakte Treiberschaltung (WS2811), die nur einen Dateneingang benötigt, um den Zustand, die Helligkeit und die Farbe der 3 LEDs zu steuern. Auf Kosten der Notwendigkeit, nur eine Datenleitung zur Ansteuerung von 3 LEDs zu benötigen, besteht bei der Kommunikation mit dem WS2811 die Forderung nach hochpräzisem Timing. Aus diesem Grund wird ein Echtzeit-Mikrocontroller (z. B. AVR, Arduino, PIC) benötigt. Leider kann ein Linux-basierter Mikrocomputer oder ein interpretierter Mikrocontroller wie Netduino oder Basic Stamp nicht die erforderliche Timing-Genauigkeit bieten. Und so gehe ich in diesem Instructable durch den Prozess der Einrichtung und Steuerung einer dieser LEDs mit einem Arduino Uno. Dann zeige ich, wie einfach es ist, mehrere davon für eine tolle Lichtinszenierung miteinander zu verbinden!Schwierigkeitsgrad: AnfängerZeit bis zum Abschluss: 10-15 Minuten

Schritt 1: Materialliste

Materialliste
Materialliste

Diese wundervolle RGB-LED wird in einem 5050 (5 mm x 5 mm) Gehäuse mit 6 Pads geliefert, die ziemlich einfach auf eine Breakout-Platine gelötet werden können. Da als einziges zusätzliches Bauteil ein Entkopplungskondensator benötigt wird, bietet der WS2812 ehrlich gesagt die beste Lösung zur Steuerung von Farbe und Helligkeit einer RGB-LED. Der eingebettete Konstantstrom-LED-Treiber (WS2811) ist aus zwei Gründen bemerkenswert nützlich: - Ein konstanter Strom von ~18 mA treibt jede LED an, selbst wenn die Spannung variiert. - Es müssen keine Strombegrenzungswiderstände (auch bekannt als Drosselwiderstände) zwischen dem Netzteil und den LEDs hinzugefügt werden. Alles, was wir brauchen, ist ein sehr einfaches Design, um Strom, Masse und 1 Steuereingang bereitzustellen, um ein fantastisches Beleuchtungsdisplay zu erstellen, das nicht aus einer, sondern einer ganzen Reihe von RGB-LEDs besteht. Korrekt! Durch Verbinden des Data Out-Pins einer dieser LEDs mit dem Data In-Pin einer anderen können wir beide unabhängig voneinander mit demselben Control Input ansteuern! Wenn es nicht offensichtlich ist, wie dies zu tun ist, seien Sie nicht beunruhigt, am Ende dieses Instructable sind Sie auf dem besten Weg, WS2812 zu jedem gewünschten Projekt hinzuzufügen! Für dieses Instructable ist hier ein, was wir verwenden werden: Materialien: 3 x WS2812 RGB-LEDs (vorgelötet auf einem winzigen Breakout-Board) 1 x Solderless Breadboard Solid Core Wire (verschiedene Farben; 28 AWG) 1 x Arduino Uno R3 1 x Abreiß-Stiftverbinder, 0,1"-Raster, 8-Pin-Stecker (rechtwinklig) 1 x Stiftverbinder, 0,1"-Raster, 8-Pin-Buchse (rechtwinklig) 1 x Breakaway-Pin-Steckverbinder, 0,1"-Raster, 8-Pin MaleTools: PC USB A/B Kabel Abisolierzange LötkolbenHinweise: Je nach Projekt sind die WS2812 RGB LEDs auch ohne Breakout Board für jeweils ca. 0,40 $ erhältlich, aber der Komfort der vorgelöteten Option ist für einfache Anwendungen attraktiv.

Schritt 2: Anschließen der Stiftleisten

Anschließen der Stiftleisten
Anschließen der Stiftleisten
Anschließen der Stiftleisten
Anschließen der Stiftleisten
Anschließen der Stiftleisten
Anschließen der Stiftleisten

Mit allen im vorherigen Schritt aufgeführten Materialien ist es ganz einfach, eine WS2812 RGB-LED zum Leuchten zu bringen. Zuerst wollen wir die WS2812 Breakout Boards für die Platzierung auf dem lötfreien Steckbrett vorbereiten. Dazu verwenden wir einen Drahtschneider (die meisten gängigen Schneidwerkzeuge funktionieren genauso gut), um jeden 8-Pin-Streifen in 2 x 3-Pin-Stücke zu trennen. Denken Sie daran, dass der Schnitt etwas schwierig ist. Ich habe oft versucht, die Nut zwischen zwei männlichen Headern als Führung für den Schnitt zu verwenden, und am Ende habe ich zu viel Plastik von einem Header abgeschert, den ich behalten wollte. Indem wir den Stift 'opfern', wo wir den Schnitt machen wollen, vermeiden wir das Problem insgesamt. Mit einer Zange ziehen wir den Stift ab, an dem wir schneiden möchten (in diesem Fall der 4. und 8. Stift). Nachdem die Stifte entfernt wurden, können wir die jetzt leeren Header leicht in der Mitte abschneiden. Diese Technik funktioniert genauso gut mit der weiblichen Kopfleiste. Nach dem Aufhebeln und Schneiden sollten wir 6 x 3-Pin-Stiftleisten haben, dh 2 x Standard und 4 x rechtwinklig (2 x männlich, 2 x weiblich). Mit Hilfe eines Lötkolbens können wir nun die Pins wie folgt mit jeder der drei Breakout-Platinen verbinden. Eine Platine sollte die 2 x Standard-Header haben, während die anderen beiden Platinen jeweils 1 x rechtwinklige Header haben sollten. Auf der Platine mit den Standard-Stiftleisten platzieren wir die Pins auf der Unterseite der Platine (die Seite gegenüber der LED). Auf den anderen beiden können die rechtwinkligen Überschriften (eine von jedem Geschlecht) entweder auf der Ober- oder Unterseite platziert werden. Beachten Sie, dass es wichtig ist, bei der Platzierung der Stift- und Buchsenleisten von einer Platine zur anderen konsistent zu sein. Es ist hilfreich, den SMD-Kondensator zum Ausrichten der Platinen zu verwenden; Verwenden Sie dies als Referenz, sollte der männliche Header an das Ende gelötet werden, das dem Kondensator am nächsten ist. Sobald die Pins gelötet sind, können wir einen von ihnen mit dem Arduino verbinden!

Schritt 3: Anschließen des WS2812 Breakout Boards an ein Arduino

Anschließen des WS2812 Breakout Boards an ein Arduino
Anschließen des WS2812 Breakout Boards an ein Arduino
Anschließen des WS2812 Breakout Boards an ein Arduino
Anschließen des WS2812 Breakout Boards an ein Arduino
Anschließen des WS2812 Breakout Boards an ein Arduino
Anschließen des WS2812 Breakout Boards an ein Arduino

In diesem Schritt stellen wir die notwendigen Verbindungen zwischen einem Arduino und einem unserer WS2812 Breakout Boards her. Zu diesem Zweck verwenden wir das lötfreie Steckbrett und 3 x Überbrückungsdrähte. Wenn Sie eine Drahtspule verwenden, ist es jetzt an der Zeit, 3 Stücke zu schneiden, jedes etwa 10 cm lang. Wir können jetzt das WS2812 Breakout Board (das mit den Standard-Headern) über den Teiler unseres Steckbretts legen dass der Arduino sowohl von einer Stromquelle als auch von USB getrennt ist, werden wir die Verbindungen verdrahten. Auf der Unterseite des WS2812 Breakout Boards finden wir den Namen jedes Pins: VCC, DI (DO), GND Als Anleitung verbinden wir die 5V- und GND-Pins des Arduino mit den VCC- und GND-Pins der WS2812-Platine bzw.. Dann verbinden wir Pin 8 auf der digitalen Seite des Arduino mit dem DI-Pin der WS2812-Platine, das ist der mittlere Pin der Seite, die dem Kondensator am nächsten ist. Jetzt sind wir bereit, unser Programm auf den Arduino zu laden und den WS2812 zum Blinken zu bringen!

Schritt 4: Mit der Arduino IDE blinken lassen

Mit der Arduino IDE zum Blinken bringen
Mit der Arduino IDE zum Blinken bringen
Mit der Arduino IDE zum Blinken bringen
Mit der Arduino IDE zum Blinken bringen

Ich gehe davon aus, dass Sie die Arduino-IDE bereits auf Ihrem Computer installiert haben --- zahlreiche Anleitungen im Internet erklären den Vorgang recht gut. Das Programm, das wir auf unseren Arduino laden müssen, kann hier heruntergeladen werden. Nachdem wir einfach auf die prime.ino-Datei im Ordner Firmware > Beispiele > Primer doppelklicken können, um sie auf die Arduino IDE zu laden (wirtten für Version 1.0.5). Das Paket enthält die notwendigen Bibliotheken zum Kompilieren des Codes, sodass keine Fehler auftreten sollten. Bitte posten Sie einen Kommentar, wenn Sie beim Kompilieren auf Probleme stoßen. Nachdem Sie den Arduino-Board-Typ und den USB-Port mit der Menüoption Tools ausgewählt haben, laden Sie den Code hoch und der WS2812 sollte abwechselnd zwischen Rot, Grün und Blau blinken. Das schönste Merkmal dieser WS2812 RGB-LEDs ist, dass sie ziemlich einfach „verkettet“werden können, um lange Streifen und Arrays mit vielen dieser LEDs zu erstellen. Im nächsten Schritt machen wir genau das mit den 3 vorbereiteten Brettern.

Schritt 5: Erstellen eines Streifens von RGB-LEDs

Erstellen eines Streifens aus RGB-LEDs
Erstellen eines Streifens aus RGB-LEDs
Erstellen eines Streifens aus RGB-LEDs
Erstellen eines Streifens aus RGB-LEDs

Die eingebettete LED-Treiberschaltung (WS2811) ermöglicht das „Daisy-Chaining“einer LED zur nächsten mit nur 1 Datenleitung(!). Indem wir den Datenausgang eines WS2812 mit dem Dateneingang eines anderen verbinden, können wir die Helligkeit und Farbe einer ganzen Reihe von LEDs bis zu 500 davon auf einem Arduino steuern! Um viele LEDs anzusteuern, müssen natürlich einige Überlegungen angestellt werden: - Jedes Pixel zieht bis zu 60 mA (weiß bei voller Helligkeit erfordert, dass alle LEDs eingeschaltet sind, jede zieht ~ 20 mA). - Ein Arduino wird seinen RAM maximieren und 500 LEDs mit einer Bildwiederholfrequenz von 30 Hz ansteuern. - Um zwei Platinen miteinander zu verbinden, beträgt der empfohlene maximale Abstand 6 Zoll, um Stromabfälle und Datenbeschädigungen zu vermeiden. Unter Berücksichtigung dieser Überlegungen können wir alle LEDs mit einer Farbauflösung von 24 Bit bei konsistenten Helligkeitsstufen ansteuern. und ziemlich widerstandsfähig gegen Änderungen an (kleinen) Batterieleistungsänderungen. Um die Boards, die wir für dieses Instructable vorbereitet haben, zu "verketten", beginnen wir, indem wir das weibliche Ende von einem mit dem männlichen Ende des anderen der beiden Boards mit der rechten verbinden - Winkelleisten. Dann, wenn unser Arduino-Board von Strom und USB getrennt ist, platzieren wir das männliche Ende der Zwei-Platinen-Kette auf dem lötfreien Steckbrett. Wir stellen sicher, dass die Pins mit denen auf dem WS2812 Breakout Board übereinstimmen, das mit dem Steckbrett verbunden war Bei einer solchen Ausrichtung befinden sich die VCC- und GND-Pins sowohl von der geraden Header-Platine als auch der Kette in derselben Reihe des Steckbretts. Wir platzieren die Zwei-Platinen-Kette in der Nähe des Endes des dritten Breakout-Boards, das dem Kondensator gegenüberliegt. EIN Nachdem alles angeschlossen ist, können wir die Arduino IDE starten und mit dem Texteditor die Definition "#define NUM_LEDS 1" in "#define NUM_LEDS 3" ändern. Nachdem wir das Board wieder an Strom und/oder USB angeschlossen haben, können wir das neue Programm hochladen… und… BAM! Alle drei LEDs sollten genau so blinken!

Schritt 6: In die Dunkelheit, lass es Licht werden

In die Dunkelheit, lass es hell werden!
In die Dunkelheit, lass es hell werden!
In die Dunkelheit, lass es hell werden!
In die Dunkelheit, lass es hell werden!

Dieses Instructable zeigte Ihnen schnell, wie Sie die auf winzigen Breakout-Boards vorgelötete WS2812 RGB-LED verwenden. Wir haben ein Arduino verwendet, um die Helligkeit und Farbe der LEDs zu steuern. Etwas enttäuschend war, dass der von uns verwendete Code alle LEDs gleichzeitig blinken ließ, mit der gleichen Intensität und Farbe. Dieser Betriebsmodus schöpft nicht das volle Potenzial des „intelligenten“LED-Treibers (WS2811) aus, der in diesem Gehäuse integriert ist. Versuchen wir also die folgenden Änderungen am Originalcode. Wie zuvor laden Sie die Datei herunter, entpacken sie und öffnen dann die Firmware, die auf den Arduino geladen werden soll (firmware>effects>effects.ino). Alle für diese Demo benötigten Dateien sind enthalten, sodass keine Bibliotheken von Drittanbietern hinzugefügt werden müssen. Der Code sollte ohne Änderungen kompiliert werden - er ist bereits für die Verarbeitung der 3 LEDs eingestellt. Jetzt liegt es an Ihrer Fantasie, das nächste Projekt zu entwickeln, bei dem diese sehr nützlichen, kompakten RGB-LEDs ihr Licht erstrahlen können. Fühlen Sie sich frei, einige Ihrer eigenen Kreationen mit dem WS2812 im Kommentarbereich zu posten!

Empfohlen: