====== LED Matrix ====== ===== Übersicht ===== Wir haben vom [[https://metalab.at/|Metalab]] aus Wien 25 (+11) LED Panels erhalten. Danke an der Stelle nach Wien an die Leute vom Metalab, vorallem an [[https://metalab.at/wiki/Benutzer:Overflo|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: {{:projekte:ledmatrix:img_20140118_184908.jpg?direct&300 |}} {{:projekte:ledmatrix:img_20140120_183055.jpg?direct&300 |}} {{:projekte:ledmatrix:img_20140220_194014.jpg?direct&300 |}} {{:projekte:ledmatrix:img_20140220_194030.jpg?direct&300 |}} {{:projekte:ledmatrix:clock.jpg?direct&300 |}} ===== 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 [[https://github.com/rralf/Matrix-Client|eigene App]] für die Matrix schreiben! ===== Bau des Multiplexers ===== [[projekte:ledmatrix:multiplexer|Multiplexer]] ===== Hardware ===== ==== Stromversorgung ==== Versorgt wird die LED Matrix über ein 12V / 30A Netzteil: {{ :projekte:ledmatrix:img_20140220_194023.jpg?direct&300 |}} ==== Die Panels ==== {{:projekte:ledmatrix:matrix_vorn_1.jpg?200|}} {{:projekte:ledmatrix:matrix_hinten.jpg?200|}} ^ Verbindungen je Element ^ Kaskadieren von Matrizen ^ | {{:projekte:ledmatrix:ledmatrix_doku_open.png?200|}} | {{:projekte:ledmatrix:ledmatrix_chained.png?450|}} | | 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 2x7805 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 5x5 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 === * 8x{{:projekte:ledmatrix:l3654s.pdf|L3654S}} * Treiber IC * serieller Eingang * paralleler Ausgang (10x open collector output) * steuern je eine Zeile à 9 LED's * Output 10 ist jeweils unbelegt * Data Out ist verbunden mit * 1x{{:projekte:ledmatrix:palce16v8h.pdf|PALCE16V8H}} * 1x{{:projekte:ledmatrix:74ls157.pdf|74LS157}} * 1x{{:projekte:ledmatrix:sn74ls47.pdf|74LS47}} * 1x{{:projekte:ledmatrix:74ls241.pdf|74LS241}} ==== 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. [[https://github.com/gurgelhals/Matrix-Client|Client Software auf Github]] ==== Raspberry Software ==== Dieser Teil der Software läuft ausschließlich auf dem Raspberry der Matrix und lauscht auf UDP Port 1337 auf Kommandos. [[https://github.com/gurgelhals/Matrix-Raspberry|Raspberry Software auf Github]] ===== Fotos / Videos ===== [[projekte:ledmatrix:fotos|Fotos vom Bau]] [[http://www.youtube.com/watch?v=SzRkGne2pgU|Youtube - Matrix 1]] [[http://www.youtube.com/watch?v=uGXZWj93Q00|Youtube - Matrix 2]] [[http://www.youtube.com/watch?v=CC8B907D1co|Youtube - Matrix 3]] ===== Ansprechpartner ===== * [[mitglieder:ralf|Koch: Ralf]] ===== Links ===== [[http://www.youtube.com/watch?v=nb22q38Enic&feature=youtu.be|Erste Tests unserer Matrix]] [[https://www.youtube.com/watch?v=Qvic-bL7gSs|Blinkofant@Youtube]] [[https://metalab.at/wiki/Blinkofant|Blinkofant@Metalab]] [[https://metalab.at/wiki/images/4/49/Albert-Schultz-Eishalle-by-kerky_oe.jpg|Eishockeyhalle wo die Teile herkommen]] ===== Datenblätter ===== {{:projekte:ledmatrix:l3654s.pdf|L3654S}} {{:projekte:ledmatrix:palce16v8h.pdf|PALCE16V8H}} {{:projekte:ledmatrix:74ls157.pdf|74LS157}} {{:projekte:ledmatrix:sn74ls47.pdf|74LS47}} {{:projekte:ledmatrix:74ls241.pdf|74LS241}}