LED Matrix
Übersicht
Wir haben vom Metalab aus Wien 25 (+11) LED Panels erhalten. Danke an der Stelle nach Wien an die Leute vom Metalab, vorallem an Overflo!
Die Matrizen wollen mit 12V versorgt werden. Ein Element besteht aus 8*9 Pixeln. Ein Pixel besteht aus 5 LED's. Ein Element schluckt bei nem Fullon 1.15A@12V=13.8W. Abmessungen pro Element: 22cm * 25cm = 550cm² entspricht 7.63cm²/Pixel.
Die Panels besitzen eigene Steuerlogik und werden seriell mit Daten befeuert. Prinzipiell sind sie kaskadierbar. Aus Geschwindigkeitsgründen haben wir uns aber dazu entschlossen, einen speziellen Multiplexer zu bauen um so Graustufen (versch. Helligkeiten) erreichen zu können.
Dieser Multiplexer wird von einem Raspberry Pi gesteuert, welcher per Ethernet seine Befehle erhält.
Hier die fertige Matrix:
Todo
Was ist noch zu erledigen?
- Mehr mehr mehr Apps für die Matrix!
Wie spiel ich damit rum?
Einfach im internen Netz auf http://matrix gehen und Spaß haben! Oder einfach eine eigene App für die Matrix schreiben!
Bau des Multiplexers
Hardware
Stromversorgung
Die Panels
Verbindungen je Element | Kaskadieren von Matrizen |
---|---|
Fotos vom Metalab geklaut | Fotos vom Metalab geklaut |
Nachdem die Pixelclock max. 200kHz beträgt, haben wir uns dazu entschlossen einen Multiplexer zu bauen, und die Panels nicht zu kaskadieren, um Graustufen (versch. Helligkeit) erzeugen zu können.
Funktionsweise der Elemente
- Jedes Panel wird mit 12V versorgt und verbraucht maximal 1.15A bei einem Full On (13.8W)
- Auf jedem Panel befinden sich auf der Rückseite 2×7805 Festspannungswandler
- Evtl könnte man die Panels direkt mit 5V befeuern und so etwas Strom sparen
- Ansteuerung funktioniert so weit, die Pixelclock darf MAXIMAL 200KhZ betragen
- d.h. ein Bild pro 9*8 (10Byte pro Panel) Matrix braucht 400µs
- Eine Matrix mit 5×5 Paneln bräuchte so pro Bild 10ms
- Dank Multiplexer bleiben wir für ein komplettes Bild auf 400µs
Ansteuerung
Pin | Funktion | Kommentar |
---|---|---|
1 | data/clock ? comes back out here (Rückleitung Schieberegister) | |
2 | data/clock ? comes back out here (Rückleitung Schieberegister) | |
3 | DatLoad EQU 0 ;data bit for loading data and control data | |
4 | ClkRing EQU 1 ;clock for shift left the whole line | |
5 | ClkLoad EQU 2 ;clock for shift left & loading all selected modules | |
6 | ClkBlink EQU 3 ;clock for blinking (0…off, 1…on) | |
7 | ClkSteu EQU 4 ;clock for shift left & load control data from DatLoad | |
8 | DatRing EQU 5 ;data bit for loading data during ClkRing | |
9 | Reset EQU 6 ;clear all control data | |
10 | OnOff EQU 7 ;turn on/off the whole display (0…off, 1…on) |
IC's pro Element
Raspberry Pi
Ein Raspberry Pi dient zur Ansteuerung des Multiplexers, welcher mit den Panels verbunden ist.
Software
Client Software
Die API für die Clientsoftware ist so gestaltet, dass sie ermöglicht auch zu Hause Animationen für die Matrix entwickeln zu können ohne sie physikalisch auf der Matrix testen zu müssen, da sie die Matrix auch auf die Kommandozeile rendern kann.
Raspberry Software
Dieser Teil der Software läuft ausschließlich auf dem Raspberry der Matrix und lauscht auf UDP Port 1337 auf Kommandos.