Alcuni giorni fa abbiamo mostrato come mostrare un tapis roulant sulla nostra matrice a LED 4x64. Abbiamo integrato il modulo in un PC.
Secondo gli standard di oggi, tuttavia, tutto nel computer deve essere RGB. Ecco perché stiamo cercando di realizzare una trascrizione simile con i nostri pannelli LED U-64 oggi nel nostro post sul blog.
Nota importante: i pannelli LED U-64 sono dotati dei LED WS2812b diffusi e popolari. Un LED WS2812b è composto da 3 piccoli LED (rosso, verde e blu) e un piccolo chip controller, tutti in un componente molto compatto.
Questi LED RGB sono indirizzabili individualmente e molto luminosi. Ogni LED tira a piena intensità luminosa (rosso, verde e blu al massimo) a circa 50mA a 5V.
Ciò significa che se abbiamo impostato solo 4 dei 64 LED nel pannello alla massima luminosità, abbiamo già raggiunto il limite del nostro Nano V3.
Altre parole: chiunque fornisca questo modulo con tensione sull'Arduino può essere sicuro che questo brucia nel prossimo futuro.
È quindi assolutamente necessario utilizzare un alimentatore esterno a 5V con potenza sufficiente per i LED WS2812b.
Uso un alimentatore da 5V con 10A per questo progetto.
Nel progetto utilizziamo le seguenti parti:
1xNano V3.0 PRO, versione saldata con cavo USB
1x 5V alimentazione 13+ A
1x Elektrolytkondensator 1000μF 10V
1x 220 Widerstand
5x 3-Pin Stiftleiste
Molti cavi jumper. Raccomando il set di consegna AZ3x Cartone + 3x Filo di saltatore
Voglio chiudere 4 pannelli con 64 LED ciascuno, cioè 256 LED in totale. 256 * 50mA = 12800 mA = 12.8A.
Sono quindi consapevole che sono fiducioso che il mio alimentatore non si accese, che i pannelli non dovrebbero funzionare con piena luminosità.
Poiché i pannelli non sono tra i componenti più economici, raccomando che all'inizio venga utilizzato un solo pannello. I pannelli hanno 3 perni su ciascun lato e possono essere collegati molto facilmente da.
Ci uniremo al gruppo come segue:
alimentazione elettrica |
1000 μF 20V Elco |
Pannello |
Nano V3 |
+ |
+ (corsa lunga) |
VCC |
VIN |
- |
- (corta gamba) |
GND |
GND |
|
|
DIN |
D5 (con 220 resistenza) |
Dopo aver collegato tutto e collegato il nostro alimentatore, il nostro pannello non mostra nulla per la prima volta. Quindi dobbiamo impostare ogni LED, cioè ogni pixel un valore di colore (rosso, verde e blu) e luminosità.
Praticamente, ci sono alcune biblioteche che rendono questo sforzo più facile.
Usiamo la diffusa biblioteca FastLED di Daniel Garcia https://github.com/FastLED , così come le librerie che le hanno impostate LEDMatrix e LEDText di Aaron Liddiment https://github.com/AaronLiddiment .
Mentre il pannello deve essere installato in un PC ad un certo punto, è di diventare un display informativo che ricorda il servizio pacchetto di dove si trova la nostra porta principale, in modo che possa raccogliere i tuoi pacchetti più velocemente.
#include
#include <LEDMatrix.h> #include <LEDText.h> #include <fontRobotron.h> // ndern Sie die nächsten 6 definiert, um Ihren Matrixtyp und Ihre Gröe zu entsprechen #definire LED_PIN 5 #definire COLOR_ORDER GRB #definire CHIPSET WS2812B #definire MATRIX_WIDTH 32 #definire MATRIX_HEIGHT 8 #definire MATRIX_TYPE VERTICAL_MATRIX // Come sono organizzati i LED cLEDMatrix<MATRIX_WIDTH, MATRIX_HEIGHT, MATRIX_TYPE> Führen; cLEDText ScrollingMsg; Konst nicht unterzeichnet Char TxtDemo[] = { EFFECT_SCROLL_LEFT EFFECT_HSV_CV "\x00\xff\xff\x40\xff\xff" " AZ-DELIVERY" EFFECT_HSV_CH "\x00\xff\xff\x40\xff\xff" " IL TUO ESPERTO CON " EFFECT_HSV "\x00\xff\xff" "M" EFFECT_HSV "\x20\xff\xff" "Ich" EFFECT_HSV "\x40\xff\xff" "K" EFFECT_HSV "\x60\xff\xff" "R" EFFECT_HSV "\ Xe0 \ xff \ XFF" "O" EFFECT_HSV "\ Xc0 \ xff \ XFF" "E" EFFECT_HSV "\ XA0 \ xff \ XFF" "L" EFFECT_HSV "\ X80 \ xff \ XFF" "E" EFFECT_HSV "\ X00 \ xff \ XFF" "K" EFFECT_HSV "\ X20 \ xff \ XFF" "T" EFFECT_HSV "\ X40 \ xff \ XFF" "R" EFFECT_HSV "\ X60 \ xff \ XFF" "O" EFFECT_HSV "\ XA0 \ xff \ XFF" "N" EFFECT_HSV "\ X80 \ xff \ XFF" "IO" EFFECT_HSV "\ X00 \ xff \ XFF" "K" EFFECT_HSV "\ X20 \ xff \ XFF" "!" EFFECT_RGB "\ Xff \ xff \ XFF" EFFECT_HSV_AH "\ X00 \ xff \ xff \ xff \ xff \ XFF" "EINGANG RECHTS" EFFECT_SCROLL_RIGHT EFFECT_HSV_AH "\ X00 \ xff \ xff \ xff \ xff \ XFF" ">>>>>>>>>>>>>>" }; vuoto impostare() { FastLED.addLeds<CHIPSET, LED_PIN, COLOR_ORDER>(leds[0], leds.Taglia()); FastLED.SetBrightness(10); // WICHTIG - Hier wird die Helligkeit eingestellt. Am Anfang einen niedrigen Wert verwenden, und langsam hochtasten. FastLED.chiaro(vero); ritardo(500); FastLED.showColor(CRGB::Rosso); ritardo(1000); FastLED.showColor(CRGB::Lime); ritardo(1000); FastLED.showColor(CRGB::Blu); ritardo(1000); FastLED.showColor(CRGB::bianca); ritardo(1000); FastLED.mostrare(); ScrollingMsg.SetFont(RobotronFontData); ScrollingMsg.Dentro(&leds, leds.Larghezza(), ScrollingMsg.FontHeight() + 1, 0, 0); ScrollingMsg.SetText((unsigned carbonizzare *)TxtDemo, taglia di(TxtDemo) - 1); ScrollingMsg.SetTextColrOptions(COLR_RGB | COLR_SINGLE, 0xFF, 0x00, 0xFF); } vuoto ciclo continuo() { Se (ScrollingMsg.UPDATETEXT() == -1){ ScrollingMsg.SetText((unsigned carbonizzare *)TxtDemo, taglia di(TxtDemo) - 1); ritardo(20); } altro FastLED.mostrare(); ritardo(20); }
Nach dem hochladen sehen wir dass wir, je nachdem wie lange der Text ist, uns schon langsam an die Grenzen des verfügbaren Speichers des Nano herantasten.
Wir hoffen, dass Sie unser heutiger Blogbeitrag Sie inspiriert hat, and wir freuen uns auf Ihre Kommentare.
Bis zum nächsten Beitrag von AZ-Delivery, Ihrem Experten für Mikroelektronik!
9 commenti
Peter
Das ist eine gute Idee, aber eben zu teuer bei mehreren Modulen.
Habe zwar immer gute Gedanken aber kann sie leider nicht umsetzen, da ich im programmieren nicht fit bin.
Da die LED einzeln programmierbar sind, besteht da nicht die Möglichkeit die LED Bänder zu nutzen, in dem man 8 Streifen in der gewünschten Länge schneidet und diese untereinander legt und verbindet.
Dann könnte man auch eine größere Laufschrift fertigen.
Moritz
6.3V für den ElKo sind schon etwas knapp…. schlimmstenfalls macht es “plopp” :-D
Eosne
Kann man auch einen elektrolytkondensator mit 1000 µF 6,3V benutzen ?
Dominik
Keiner dieser Sketches aus den oben genannten Bibliotheken funktioniert auf dem Uno! Es heißt immer nicht genügend RAM verfügbar!
Thomas
Wie bekomme ich Umlaute hin? Also ÖÜÄß.
Rüdiger
Bei bis 12 A die Versorgung über die dünnen Jumper Wire und das Breadboard zu leiten ist gelinde gesagt “sportlich”! Ich hätte da nicht Angst, das das Netzteil “in Flammen aufgeht”, sondern eher, das die Kontaktstellen verschmoren, die Kabel warm werden und die Daten “seltsam aussehen”, da der Massepunkt am jeweiligen Panel am “floaten” ist!
Da sollte man mindestens 1 mm2, besser 1,5 mm2 Kabel verwenden und die Panels über eine sternförmige Verdrahtung anschliessen (lediglich die Datenleitung wird dann busförmig verlegt)
Also bitte die 5V Versorgung oben im fritzing-Bild nur für den Arduino verwenden und das oder die Panels direkt mit dem Netzteil verdrahten.
Kiwix
Heute im Newsletter von dem Projekt gelesen. Zuerst dachte ich, es wäre ja eine tolle Idee, wenn man die benötigten Komponenten als Paket anbieten würde. Hätte ich gekauft und dann direkt mal nachgebaut.
Aber dann musste ich feststellen, dass bis auf den Arduino gar nichts im Shop zu finden ist. Ich finde das nicht so gelungen, auf Projekte mit Komponenten hinzuweisen, die man gar nicht (mehr) im Angebot hat.
Viele Grüße
Kiwix
Pentalon
Danke für die tolle Demo.
Bei mir ist der Text allerdings spiegelverkehrt.
Was muss ich hier ändern, damit die Schrift korrekt angezeigt wird ?
Bester Grüsse…
veit
Nur als Info: wenn man den “Kopier” Button nutzt, bekommt man unsichtbare Sonderzeichen über die Arduino dann schimpft ….