{"id":7661,"date":"2021-10-04T17:36:03","date_gmt":"2021-10-04T15:36:03","guid":{"rendered":"https:\/\/u-labs.de\/portal\/?p=7661"},"modified":"2022-12-12T18:28:46","modified_gmt":"2022-12-12T16:28:46","slug":"rapsberry-pi-rgb-led-matrix-lauftext-bilder-effekte-mehr-projektvorschau-100-abo-special","status":"publish","type":"post","link":"https:\/\/u-labs.de\/portal\/rapsberry-pi-rgb-led-matrix-lauftext-bilder-effekte-mehr-projektvorschau-100-abo-special\/","title":{"rendered":"Rapsberry Pi RGB LED MATRIX: Lauftext, Bilder, Effekte &#038; mehr &#8211; Projektvorschau (100 Abo SPECIAL)"},"content":{"rendered":"<p>100 Menschen haben unseren Raspberry Pi Kanal f\u00fcr den deutschsprachigen Raum abonniert! Zu einem besonderen Anlass gibt es ein besonderes Videoformat mit neuen Inhalten. Damit habt ihr mich zugegeben \u00fcberrascht. 100 Menschen die sich nicht nur f\u00fcr den Raspberry Pi interessieren, sondern auch meinen Inhalten folgen m\u00f6chten, ist nat\u00fcrlich ein Meilenstein und freut mich sehr.<\/p>\n<p>Nun habe ich mir \u00fcberlegt, was ich als kleines Dankesch\u00f6n spontan machen k\u00f6nnte 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.<\/p>\n<p>Was ihr auf dem obigen Bild seht, ist eine 64&#215;32 Matrix. Die geh\u00f6rt zu den Gr\u00f6\u00dften, die man einzeln bekommt \u2013 und die noch einigerma\u00dfen 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.<\/p>\n<h2 class=\"wp-block-heading\">Was kann man alles mit einer 64&#215;32 LED-Matrix auf dem Raspberry Pi machen?<\/h2>\n<p>Ich habe ein paar Beispiele vorbereitet, die bisher schon funktionieren, was man f\u00fcr 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 \u00fcblich ist. Sie wird programmatisch auf die Gr\u00f6\u00dfe der Matrix skaliert, sodass man die Bildpunkte auf die LEDs der Matrix mappen kann. Da es sich um RGB-LEDs handelt, k\u00f6nnen die Leuchtdioden problemlos die Farben des Bildes darstellen. Es gibt auch einfarbige Matritzen, dort w\u00e4re das nicht m\u00f6glich, da man die LEDs nur ein oder ausschalten kann, ohne Ver\u00e4nderungen der Farbe.<\/p>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/rpi-hello.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"2000\" height=\"1125\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/rpi-hello.jpg\" alt=\"\" class=\"wp-image-7665\"\/><\/a><\/figure>\n<p>Das zweite Beispiel ist \u00e4hnlich. 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\u00f6\u00dfe bzw. Seitenverh\u00e4ltnisse der Matrix angepasst habe.<\/p>\n<figure class=\"wp-block-video\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/rpi-matrix-thanks_logo.mp4\"><\/video><\/figure>\n<p>Ebenfalls m\u00f6glich ist scrollender Text. Hier habe ich Unicode-Zeichen verwendet und eine gro\u00dfe Schrift, die von der H\u00f6he her die Matrix ziemlich gut ausnutzen kann. Durch die RGB-LEDs sind wir ziemlich frei, was die Farben angeht: Es l\u00e4sst sich reiner Text auf einem dunklen Hintergrund eben so abbilden wie ein farblicher Hintergrund.<\/p>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-16h44m27s094.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"968\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-16h44m27s094.jpg\" alt=\"\" class=\"wp-image-7676\"\/><\/a><\/figure>\n<p>Im zweiten Beispiel mit anderen Farben, eine kleineren Schrift und langsamerer Geschwindigkeit. Die Pulsweitenmodulation wird komplett beim Raspberry Pi durchgef\u00fchrt. Das hei\u00dft: Wir \u00fcbergeben den Inhalt den wir anzeigen m\u00f6chten nicht der Matrix und die k\u00fcmmert sich dann darum, wie das dargestellt wird. Sondern wir zeichnen das Bild programmatisch neu. Bei so einem Flie\u00dftext zeichnen wir also ein paar \u201eBilder\u201c (so nenne ich die Ausgabe hier mal) nacheinander mit dem Text in fixer Position. Anschlie\u00dfend \u201everschieben\u201c wir den Text ein St\u00fcck nach links, f\u00e4rben die Pixel rechts daneben (die zuvor in der Textfarbe gef\u00e4rbt waren) wieder in die Hintergrundfarbe zur\u00fcck. So entsteht eine Laufschrift, wie man sie von Stra\u00dfenreklame kennt \u2013 vor allem aus den USA. Je nachdem wie viele Bilder wir zeichnen, um so schneller oder langsamer bewegt sich der Text.<\/p>\n<figure class=\"wp-block-video\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/rpi-matrix-wait-gif_logo.mp4\"><\/video><\/figure>\n<p>\u00c4hnlich 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 \u00fcbereinander gelegt, in jedem Bild bewegt sich eine Figur oder ein Gegenstand ein kleines St\u00fcck. 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.<\/p>\n<p>Das kann man nun mit einem Filmausschnitt auf die Spitze treiben. Prinzipiell k\u00f6nnte man das auch mit kompletten Filmen machen: Runterskalieren, die Einzelbilder auf die Matrix mappen und nacheinander darstellen.<\/p>\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/rpi-matrix_color-pulse_logo.mp4\"><\/video><\/figure>\n<p>Statt Inhalte darzustellen, l\u00e4sst sich die Matrix auch zur Beleuchtung verwenden. Hier wechseln verschiedene Farben, die jeweils die gesamte Fl\u00e4che ausf\u00fcllen. So etwas k\u00f6nnte man beispielsweise f\u00fcr eine Art Raumlicht verwenden, das im Hintergrund laufen soll.<\/p>\n<p>Ebenfalls eine coole Sache ist die M\u00f6glichkeit, die Helligkeit der LEDs bestimmen zu k\u00f6nnen: Hier leuchtet die gesamte Matrix in einer bestimmten Farbe auf voller Kraft, wird langsam gedimmt und anschlie\u00dfend wiederholt sich dies mit der n\u00e4chsten Farbe. Das l\u00e4sst sich einsetzen, um Aufmerksamkeit zu erzeugen. Ich k\u00f6nnte mir das als Anzeige f\u00fcr 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.<\/p>\n<p>Durch die freie M\u00f6glichkeit der Programmierung kann man auch nette Spielereien entwickeln: Beispielsweise ein bunter Kreis, der zunehmend w\u00e4chst. Oder ein sich drehender W\u00fcrfel.<\/p>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h28m41s364.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h28m41s364.jpg\" alt=\"\" class=\"wp-image-7685\"\/><\/a><\/figure>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h29m36s590.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h29m36s590.jpg\" alt=\"\" class=\"wp-image-7686\"\/><\/a><\/figure>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h28m48s433.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h28m48s433.jpg\" alt=\"\" class=\"wp-image-7687\"\/><\/a><\/figure>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h32m31s161.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"3298\" height=\"1929\" src=\"https:\/\/u-labs.de\/portal\/wp-content\/uploads\/2021\/10\/vlcsnap-2021-10-04-17h32m31s161.jpg\" alt=\"\" class=\"wp-image-7688\"\/><\/a><\/figure>\n<p>Schauen wir uns nun etwas praktischeres an, was ich im Alltag n\u00fctzlicher finde und weiterentwickeln m\u00f6chte: Neben der Uhrzeit l\u00e4dt sich das Programm min\u00fctlich die aktuellen Wetterdaten aus dem Internet. Die erste Zahl links ist die H\u00f6chsttemperatur f\u00fcr heute, daneben die gef\u00fchlte Temperatur und links die aktuelle Luftfeuchtigkeit. Das ist erst einmal nur ein <em>Proof of Concept<\/em>, man k\u00f6nnte nat\u00fcrlich noch mehr darstellen. Der Wetterdienst liefert beispielsweise zus\u00e4tzlich die H\u00f6chst- und Tiefstwerte f\u00fcr den Tag, das aktuelle Wetterbild (also ob es regnet, die Sonne scheint, schneit etc) und eine Prognose.<\/p>\n<p>Zu Testzwecken habe ich unten noch einen Z\u00e4hler eingebunden. Ist der bei Null, werden die neuesten Daten aus dem Internet geladen. Hier in der Demo wird sich dadurch wahrscheinlich nichts \u00e4ndern. Aber gerade morgens und Abends sieht man hier sehr sch\u00f6n, wie sich die Temperatur \u00fcber den Tag ver\u00e4ndert. Oder wie die gef\u00fchlte Temperatur steigt bzw sinkt, wenn es beispielsweise mehr oder weniger st\u00fcrmisch wird.<\/p>\n<p>Hier kann man sehen, was ich Anfangs bezogen auf den Platz meinte: Der Text passt nur mit Abk\u00fcrzungen in die Zeile, obwohl bereits eine platzsparendere Schrift genutzt wurde als oben. Symbole zu nutzen, macht daher nicht nur aus optischen Gr\u00fcnden Sinn: Es verbraucht weniger Platz, sodass man mehr Informationen darstellen kann.<\/p>\n<h2 class=\"wp-block-heading\">Danke an alle Abonnenten!<\/h2>\n<p>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\u00e4gen im Forum aktiv beteiligen.<\/p>\n<p>Geplant ist zum Thema LED-Matrix am Raspberry Pi noch weitere Beitr\u00e4ge zu erstellen \u2013 angefangen mit einem Anf\u00e4ngervideo, 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.<\/p>\n<p>Allerdings k\u00f6nnt ihr die Zeit bis dahin gerne die anderen Videos und Beitr\u00e4ge anschauen, mittlerweile sind 22 St\u00fcck auf diesem Kanal online und jede Woche werden es mehr. <\/p>\n<p>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\u00fcber denkt: Sollen wir uns mehr Hardware-Themen ansehen? Oder interessiert ihr euch eher f\u00fcr Software, also den Pi als Webserver, Nextcloud, f\u00fcr selbst programmierte Anwendungen usw? Ich bin auf eure Meinungen gespannt und w\u00fcnsche euch viel Erfolg bei euren Projekten!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>100 Menschen haben unseren Raspberry Pi Kanal f\u00fcr den deutschsprachigen Raum abonniert! Zu einem besonderen Anlass gibt es ein besonderes Videoformat mit neuen Inhalten. Damit habt ihr mich zugegeben \u00fcberrascht. 100 Menschen die sich nicht nur f\u00fcr den Raspberry Pi interessieren, sondern auch meinen Inhalten folgen m\u00f6chten, ist nat\u00fcrlich ein Meilenstein und freut mich sehr. &#8230;<\/p>\n","protected":false},"author":5,"featured_media":7662,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[671],"tags":[124,967,966,969],"class_list":["post-7661","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-raspberry-pi","tag-led","tag-leuchtdioden","tag-matrix","tag-rgb-leds"],"_links":{"self":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7661","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/comments?post=7661"}],"version-history":[{"count":9,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7661\/revisions"}],"predecessor-version":[{"id":9826,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7661\/revisions\/9826"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/media\/7662"}],"wp:attachment":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/media?parent=7661"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/categories?post=7661"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/tags?post=7661"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}