Rapsberry Pi RGB LED MATRIX: Lauftext, Bilder, Effekte & mehr – Projektvorschau (100 Abo SPECIAL)

Als Video ansehen
Bereitgestellt über YouTube

Rapsberry Pi RGB LED MATRIX: Lauftext, Bilder, Effekte & mehr – Projektvorschau (100 Abo SPECIAL)

100 Menschen haben unseren Raspberry Pi Kanal für den deutschsprachigen Raum abonniert! Zu einem besonderen Anlass gibt es ein besonderes Videoformat mit neuen Inhalten. Damit habt ihr mich zugegeben überrascht. 100 Menschen die sich nicht nur für den Raspberry Pi interessieren, sondern auch meinen Inhalten folgen möchten, ist natürlich ein Meilenstein und freut mich sehr.

Nun habe ich mir überlegt, was ich als kleines Dankeschön spontan machen könnte und habe mich entschieden, etwas neues auszuprobieren: Eine Vorschau auf ein Projekt, an dem ich nebenher arbeite. Und zwar die Ansteuerung einer LED-Matrix mit dem Raspberry Pi. Wichtig war mir dabei, dass es keine kleine sein soll, wie sie meist angeboten wird.

Was ihr auf dem obigen Bild seht, ist eine 64×32 Matrix. Die gehört zu den Größten, die man einzeln bekommt – und die noch einigermaßen bezahlbar sind. Sie besteht aus 2048 RGB-Leds mit nur 3mm Raster. Aber selbst dort wird es schnell eng, wie ihr nachher noch sehen werdet.

Was kann man alles mit einer 64×32 LED-Matrix auf dem Raspberry Pi machen?

Ich habe ein paar Beispiele vorbereitet, die bisher schon funktionieren, was man für coole Sachen mit so einer Matrix und dem Pi machen kann. Einmal das Raspberry Pi Logo vom obigen Artikelbild. Das ist eine Vektorgrafik, also eine SVG-Datei, wie sie heute bei Logos üblich ist. Sie wird programmatisch auf die Größe der Matrix skaliert, sodass man die Bildpunkte auf die LEDs der Matrix mappen kann. Da es sich um RGB-LEDs handelt, können die Leuchtdioden problemlos die Farben des Bildes darstellen. Es gibt auch einfarbige Matritzen, dort wäre das nicht möglich, da man die LEDs nur ein oder ausschalten kann, ohne Veränderungen der Farbe.

Das zweite Beispiel ist ähnlich. Allerdings handelt es sich um ein anderes Bildformat: Ein JPG-Bild, dass ich mit Gimp selbst erstellt habe. Im Gegensatz zum ersten wurde es nicht skaliert, weil ich es auf die Größe bzw. Seitenverhältnisse der Matrix angepasst habe.

Ebenfalls möglich ist scrollender Text. Hier habe ich Unicode-Zeichen verwendet und eine große Schrift, die von der Höhe her die Matrix ziemlich gut ausnutzen kann. Durch die RGB-LEDs sind wir ziemlich frei, was die Farben angeht: Es lässt sich reiner Text auf einem dunklen Hintergrund eben so abbilden wie ein farblicher Hintergrund.

Im zweiten Beispiel mit anderen Farben, eine kleineren Schrift und langsamerer Geschwindigkeit. Die Pulsweitenmodulation wird komplett beim Raspberry Pi durchgeführt. Das heißt: Wir übergeben den Inhalt den wir anzeigen möchten nicht der Matrix und die kümmert sich dann darum, wie das dargestellt wird. Sondern wir zeichnen das Bild programmatisch neu. Bei so einem Fließtext zeichnen wir also ein paar „Bilder“ (so nenne ich die Ausgabe hier mal) nacheinander mit dem Text in fixer Position. Anschließend „verschieben“ wir den Text ein Stück nach links, färben die Pixel rechts daneben (die zuvor in der Textfarbe gefärbt waren) wieder in die Hintergrundfarbe zurück. So entsteht eine Laufschrift, wie man sie von Straßenreklame kennt – vor allem aus den USA. Je nachdem wie viele Bilder wir zeichnen, um so schneller oder langsamer bewegt sich der Text.

Ähnlich lassen sich auch Gifs abspielen, also animierte Grafiken. Ihr seht einen Ladebalken in Form einer Gif-Datei. Ein Gif kann man sich wie ein Daumenkino vorstellen: Mehrere Bilder werden übereinander gelegt, in jedem Bild bewegt sich eine Figur oder ein Gegenstand ein kleines Stück. Genau so funktionieren Gifs, man kann daraus die Einzelbilder extrahieren. Jedes Einzelbild wird auf die Pixel der Matrix gemappt, wie man ganz am Anfang schon mit den SVG und JPG-Bildern sehen konnte.

Das kann man nun mit einem Filmausschnitt auf die Spitze treiben. Prinzipiell könnte man das auch mit kompletten Filmen machen: Runterskalieren, die Einzelbilder auf die Matrix mappen und nacheinander darstellen.

Statt Inhalte darzustellen, lässt sich die Matrix auch zur Beleuchtung verwenden. Hier wechseln verschiedene Farben, die jeweils die gesamte Fläche ausfüllen. So etwas könnte man beispielsweise für eine Art Raumlicht verwenden, das im Hintergrund laufen soll.

Ebenfalls eine coole Sache ist die Möglichkeit, die Helligkeit der LEDs bestimmen zu können: Hier leuchtet die gesamte Matrix in einer bestimmten Farbe auf voller Kraft, wird langsam gedimmt und anschließend wiederholt sich dies mit der nächsten Farbe. Das lässt sich einsetzen, um Aufmerksamkeit zu erzeugen. Ich könnte mir das als Anzeige für einen Wecker vorstellen, der im besten Falle noch die Uhrzeit dazu anzeigt. Oder um die Matrix an ein Fenster zu stellen, damit Passanten auf eine Botschaft aufmerksam werden.

Durch die freie Möglichkeit der Programmierung kann man auch nette Spielereien entwickeln: Beispielsweise ein bunter Kreis, der zunehmend wächst. Oder ein sich drehender Würfel.

Schauen wir uns nun etwas praktischeres an, was ich im Alltag nützlicher finde und weiterentwickeln möchte: Neben der Uhrzeit lädt sich das Programm minütlich die aktuellen Wetterdaten aus dem Internet. Die erste Zahl links ist die Höchsttemperatur für heute, daneben die gefühlte Temperatur und links die aktuelle Luftfeuchtigkeit. Das ist erst einmal nur ein Proof of Concept, man könnte natürlich noch mehr darstellen. Der Wetterdienst liefert beispielsweise zusätzlich die Höchst- und Tiefstwerte für den Tag, das aktuelle Wetterbild (also ob es regnet, die Sonne scheint, schneit etc) und eine Prognose.

Zu Testzwecken habe ich unten noch einen Zähler eingebunden. Ist der bei Null, werden die neuesten Daten aus dem Internet geladen. Hier in der Demo wird sich dadurch wahrscheinlich nichts ändern. Aber gerade morgens und Abends sieht man hier sehr schön, wie sich die Temperatur über den Tag verändert. Oder wie die gefühlte Temperatur steigt bzw sinkt, wenn es beispielsweise mehr oder weniger stürmisch wird.

Hier kann man sehen, was ich Anfangs bezogen auf den Platz meinte: Der Text passt nur mit Abkürzungen in die Zeile, obwohl bereits eine platzsparendere Schrift genutzt wurde als oben. Symbole zu nutzen, macht daher nicht nur aus optischen Gründen Sinn: Es verbraucht weniger Platz, sodass man mehr Informationen darstellen kann.

Danke an alle Abonnenten!

Das war mein 100 Abo Special, an dieser Stelle noch einmal Danke an alle die meinen Kanal abonniert haben, die Videos anschauen und sich vielleicht sogar mit Daumen oder Kommentaren/Beiträgen im Forum aktiv beteiligen.

Geplant ist zum Thema LED-Matrix am Raspberry Pi noch weitere Beiträge zu erstellen – angefangen mit einem Anfängervideo, was man alles braucht, wie die Matrix verdrahtet wird usw. Dies wird noch etwas dauern, wenn euch das interessiert, habt daher bitte noch etwas Geduld.

Allerdings könnt ihr die Zeit bis dahin gerne die anderen Videos und Beiträge anschauen, mittlerweile sind 22 Stück auf diesem Kanal online und jede Woche werden es mehr.

Ich hoffe, dass euch dieses Video in Richtung Vorschau, Hardware und Video Blog ebenfalls gefallen hat. Bisher war der Schwerpunkt auf diesem Kanal ja eher bei der Software. Schreibt mir gerne in die Kommentare, wie ihr darüber denkt: Sollen wir uns mehr Hardware-Themen ansehen? Oder interessiert ihr euch eher für Software, also den Pi als Webserver, Nextcloud, für selbst programmierte Anwendungen usw? Ich bin auf eure Meinungen gespannt und wünsche euch viel Erfolg bei euren Projekten!

Leave a Reply