RGB-Lichterketten-Matrix mit WS2801

  • Wie in einem anderen Thread schon angekündigt, habe ich jetzt mal so Leuchtkugeln mit dem WS2801 gebaut (das ist ein LED-Treiber mit 3x 8-Bit-PWM und KSQ, Daten zur Ansteuerung werden einfach seriell durchgeschoben).


    Hier erst mal ein Video von meinen 3 Testkugeln:



    Und Foto von der 3er-Kette:



    Die werden momentan von so nem "LedWalker" angesteuert, eigener Controller ist gerade in Arbeit. Der soll dann die Daten direkt über USB oder auch DMX bekommen, mit SD-Karte drauf zum Animationen abspeichern und standalone abspielen.


    Die Kugeln sind von hier, die WS2801 habe ich von Turi - ebenso die Samsung RGB, in jeder Kugel sind 3 Stück verbaut - das ist hell genug, auch bei Tageslicht (hier scheint die Sonne in's Zimmer) sieht man die Farbe noch gut:



    Hier sieht man, wie die Kugeln aufgebaut und am Kabel befestigt sind:






    Ich habe das bewusst so gemacht, dass die Kabel senkrecht durch die Kugeln durchgehen, damit man die alle untereinander hängen kann (10 Stück an einer Kette mit 3 m) - und dann mehrere davon nebeneinander, als Matrix, Cube, oder sonstwie-3D-Installation - da hat man Kontrolle über die Höhe, waagrecht gespannte Lichterketten hängen ja immer durch...


    Durch die LED-Anordnung um das Kabel rum stört dieses auch nicht, wirft keine Schatten - die Ausleuchtung ist schön gleichmäßig, im Gegensatz zum ersten Kugel-brauchbarkeits-Test mit einer Superflux.


    Und hier noch die Platine mit dem WS2801 einzeln (ø 30 mm, Loch 5 mm):



    die ist selbst geätzt, gelötet in so nem Poco-Pizzaofen für 19,95, der neulich hier erwähnt wurde...


    Ich habe aber wenig Lust, 200 zweiseitige Platinen selbst zu ätzen, daher werde ich die wohl in China machen lassen - da würde sich anbieten, gleich mehr zu bestellen, wenn jemand Interesse daran hat, bitte PN an mich.


    Schaltplan (ist einfach die Schaltung aus dem Datenblatt) und Layout folgen, am Layout bastle ich noch etwas, evtl. mache ich 40 mm ø und das Loch noch größer für dickere Kabel.


    Ansonsten bastle ich jetzt mal an dem zugehörigen Controller weiter - der kommt dann in nem extra Thread, weil der nicht nur für diese Sache geeignet ist, sondern recht flexibel werden soll (DMX in und out, USB in und out, und dann noch 24 I/O übrig für was-auch-immer, Display, Encoder, Tasten, Matrix- oder WS2801-Ansteuerung, oder gleich direkt 24x PWM etc. - nach so ner Möglichkeit wurde ja auch schon öfter gefragt, ein paar RGB-LEDs vom PC aus zu steuern, ohne gleich DMX zu nehmen...)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

    Einmal editiert, zuletzt von Pesi ()

  • Hier ein kleines Update: Ich habe die Platine nun auf 40 mm Durchmesser vergrößert, dadurch passt alles Bastler-freundlich auf eine Seite:



    Und so sieht das Teil in echt aus (sorry für das überbelichtete Foto):



    Es ist nun sogar Platz für 3 Löcher, damit man die Kabel ordentlich befestigen kann - das Kabel von oben geht erst durch, dann wieder nach oben, weil es ja von oben festgelötet wird - auf beiden Seiten der Platine werden beide Kabel mit Kabelbinder zusammen gemacht, dadurch wird die Kette insgesamt stabil:



    Sieht man hier leider nicht ganz so gut - das Kabel ist auch zu dick, normal soll das komplett mit Mantel durch, ich suche noch eins mit ca. 4x 0,14 qmm und 4,8 mm Aussendurchmesser - das hier hat etwas mehr und zusätzlich auch noch ne Abschirmung... die wäre natürlich auch nicht so blöd, also evtl. ändere ich das Layout noch mal leicht und nehme dann doch dieses Kabel (das ist aber auch relativ starr... mal sehen).


    Die "Abplattung" hält sich trotz der größeren Platine in Grenzen, das Teil ist immer noch als Kugel zu erkennen:



    Und hier von oben:



    Die Kugel ist nur mit Heisskleber befestigt, das reicht, muss ja nur ihr eigenes Gewicht tragen - wenn man sich Mühe gibt, sollte man das Ganze sogar wasserdicht bekommen... eine Abdeckkappe oben drauf wäre noch schön, da muss ich mal schauen, ob ich da was passendes finde...


    Mit dem Controller dazu (erst mal ein einfacherer vorab, ohne DMX zusätzlich und mit weniger Speicher/IO-Ports) geht es auch *langsam* weiter, Konzept und Schaltplan stehen, ich habe die Bauteile schon mal auf ne Platine platziert, geht gut mit ner 1/4 Eurokarte, evtl. sogar noch kleiner:



    Da fehlen jetzt "nur" noch die Leiterbahnen und etwas Kleinkram :D - morgen muss ich auf ein Stadtfest zum Arbeiten bis Sonntag Nacht, dann Montag Bürokram, aber Mitte nächster Woche sollte ich doch mal wieder Zeit zum Basteln haben...


    Die 200 Kugeln liegen ja auch schon seit 2 Wochen rum, so vergeht die Zeit....:



    Das sieht nach ner Menge Arbeit aus! 8o :D


    Muss jetzt noch mit PCBCart abklären, wie das mit rund Fräsen und Nutzen etc. aussieht, sobald ein Preis pro Platine feststeht, wird es dafür auch eine Sammelbestellung im Marktplatz geben, wohl so in 2, 3 Wochen...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Ja, im Prinzip nicht schlecht, die Idee - dann müsste ich mir aber was anderes für's Loch machen einfallen lassen, ich mache das ja mit so ner Lochsäge, das wird nicht so 100% sauber und es geht recht viel Material verloren...


    ausserdem sind ja oben die Kabelverbindungen, d.H., die Platine müsste recht weit "drinnen" in der Kugel sitzen, dann wird die Ausleuchtung wieder nicht so schön gleichmäßig...


    aber da finde ich schon was, mal diese ganzen Bastelläden (VMB, Modulor, ...) durchstöbern, da wird's bestimmt irgendwo so Plastikkappen in passendem Durchmesser/Tiefe geben, die man dann noch oben drauf machen kann...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • So, mal wieder ein kleines Update...


    Die Testplatinen waren nicht sauber designed, der WS2801 verträgt ja nur 6 Volt am Ausgang, also mussten da noch 3 Transistoren hin, so wie bei der quadratischen Platine auch...


    habe das aber geschafft, dass trotzdem alle Bauteile auf einer Seite sind - Leiterbahnen aber auf 2, macht nix, ist auch besser zum Kabel anlöten:



    Diese Platinen werde ich nun komplett herstellen lassen, habe einfach keine Zeit, da 200 Stück selbst zu ätzen und zu Bestücken...


    wie gesagt, wer Interesse daran hat, es werden auch mehr gemacht, Turi hat dankenswerter Weise eine Sammelbestellung dafür organisiert :thumbup:


    Auch am Konzept hat sich etwas geändert: Ich wollte dafür ja einen Controller mit USB, DMX und SD-Karte bauen - den man dann auch universell für andere Sachen nehmen hätte können, als DMX-Interface, DMX-Player, Standalone-Player für WS2801 etc.


    Problem dabei: ich will ja 20 einzelne Ketten bauen mit je 10 Kugeln, diese als Matrix anordnen - in einem Zickzack (also als ein Strang) kann ich die nicht verkabeln, weil das flexibel bleiben soll, also dass man z.B. die Ketten auch mal nicht als Matrix nebeneinander hängt, sondern im Raum verteilt o.ä.


    Deswegen muss der Controller die Daten an 20 Pins parallel rausschieben...


    Da nun meist die Kugeln etwas weiter (20 - 60 m) von der Steuerung entfernt sind, mit USB aber nur 5 Meter gehen, müsste ich also 20 Leitungen über bis zu 50 m vom Controller zu den Ketten legen - das ist nicht nur teuer, auch die Frage, ob das WS2801-Signal auf TTL-Pegel da noch stabil ist...


    Deswegen habe ich nun den FT232R (für USB) wieder aus dem Controller ausgelagert - ich baue also einfach an den Rechner ein kleines Interface USB<->RS485, von da aus geht es mit *einer* langen Leitung zum Controller, der in der Nähe der Ketten sitzt. Damit die Leitungen zu den Ketten (die auch die Stromversorgung beinhalten) möglichst kurz sind...


    Der Controller hat zwei RS485-Schnittstellen, die 2. wird dann für DMX verwendet - SD-Karte kommt auch drauf...


    man kann dann z.B. auch über die proprietäre Schnittstelle vom Rechner aus Sequenzen auf die Karte spielen - und diese dann über die DMX-Schnittstelle abrufen, so dass man - wenn man das Teil nicht live steuern will - einfach über 3 DMX-Kanäle (Sequenz, Helligkeit, Geschwindigkeit) die vorgefertigten Programme über ein ganz normales Lichtpult abrufen kann...


    bzw. auch direkt am Gerät selbst, wenn man das einfach als Deko standalone irgendwo aufhängen will...


    Hauptanwendung wird aber die "Live"-Kommunikation mit dem Rechner sein, also mit ner speziellen SW (die ein Kumpel von mir programmiert), mit der man dann in Echtzeit Inhalte auf die Matrix spielen kann, so wie mit Madrix o.ä. halt auch - evtl. auch interaktiv...


    Schema also so:


    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Halo Pesi,


    schöne Arbeit, die du da machst. Ich hätte Interess, am Schaltplan für den Controller. Welchen AVR willst du nehmen? Wegen 2x RS485 brauchst du ja einen mit zwei UARTs. Die Software wird dann wohl wieder in ASM werden bei dir? :)


    Die Idee, mit dem USB<->RS485 finde ich übrigens klasse, müssten ja auch nur zwei ICs + Hühnerfutter sein, oder?


    Gruß Domi


    PS: Hättest du bei der Platine durch Schieben nicht noch unten soviel Platz frei machen können, dass du dir die VIAs für die Querverbindungen von der linken zur rechten LED unten sparst?

  • Leider nicht - da unten links z.B. zwischen den 3 Widerständen und der Befestigungs-Bohrung passen kaum 3 Leiterbahnen durch, da geht ausserdem i.M. die Masse für den WS2801 durch...


    Kleiner als 0805 wollte ich auch nicht machen, falls *doch* noch jemand "nackte" Platinen zum selbst bestücken haben will...


    Aber macht ja nix, das wird ja industriell gefertigt, da können ja beliebig viele Vias drin sein, ohne dass man mehr Arbeit/Aufwand damit hat... ;)


    Ja, das Interface am Rechner selbst ist nur ein FT232R mit 2 Stück 75176, einer für senden, einer für empfangen - evtl. auch gleich noch DC/DC-Wandler und 2x 6N137 für galvanische Trennung, das schadet bei sowas nie...


    das dann über Netzwerkkabel an den Controller, der wieder 2x 75176 hat - die Kommunikation soll hier bidirektional erfolgen, der Rechner schickt ein Datenpaket an den Controller, der verarbeitet das (umsortieren, an die WS2801 rausschicken) und meldet dann zurück "empfangen, kannst das nächste senden"...


    das Paket ist einfach Break, Befehlsbyte, und dann die Daten - Befehl kann eben z.B. auch sein, "speichere das Paket an Position xy auf der SD-Karte"...


    Ich nehme den ATmega644. weil der 2x USART hat, und auch genug RAM (4 kB), der muss ja die (geplant, mal sehen, wie's mit dem Timing ausgeht) bis zu 2.400 Kanäle puffern...


    Schaltplan ist ganz simpel: Der MEga644, Quarz etc. dran, an jeden Rx/Tx ein 75176 (also 4 insgesamt), restliche Pins auf WSL, eben as Ausgänge für die Ketten, evtl. noch Display dazu o.ä. - alles was da an Erweiterungen dazu kommt, dann auf eigene Platinen (z.B. DIP mit SR o.ä.)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Ich nehme den ATmega644.

    Vorsicht, nimm auf jeden Fall den 644P! Habe mir den selber vor 'ner Woche bei CSD zum Entwickeln einer Telemetrie-Firmware zum Ansteuern eines GSM-Modem geholt (brauche da die 2. UART fürs Debuggen, nachher soll das auf was kleineres). Hatte zuerst den 644 bestellt, wurde dann aber darauf aufmerksam gemacht, dass dieser offiziell* keine 2 UART hat, und es dafür den 644P gibt. Glücklicher Weise konnte ich die Bestellung telefonisch noch ändern und nachdem ich die Differenz von ein paar Cents überwiesen hatte, ging der 644P noch am selben Tag raus.


    *) Nach hören/sagen gab es beim 644 Probleme mit der 2. UART, weshalb er sie zwar wohl hat, aber eben nicht offiziell, im Datenblatt ist auch nur noch ein TX/RX-Paar bei den Pins eingetragen. Siehe auch: http://www.mikrocontroller.net/topic/93156#800213


    Ansonsten interessantes Projekt, bin auf den Prototypen gespannt. Die SD-Card wirst du einfach im SPI-Modus ansprechen? Properitäres Format oder willst du da was etabliertes wie zB XML auf 'nem FAT-Dateisystem nutzen?

  • Ja, Domi, danke für den Tipp!


    ich habe natürlich den falschen da... :D - "recht schlau" das Datenblatt vom 644p runtergeladen, aber den 644 ohne p bestellt (vor Monaten schon, war da mit der Nomenklatur nicht so vertraut, dachte, das wäre eben nur die "Picopower"-Version aber sonst gleich...)


    egal, also erst mal nen einfacheren Controller mit nur 1x RS485, nur Daten vom Rechner empfangen und an die WS2801 ausgeben, ohne Schnick und Schnack, damit da mal was fertig wird und das Ding nicht auch wieder 2 Jahre rumliegt... das mache ich dann auch auf jeden Fall in asm, ist ja nicht viel.


    Und dann in Ruhe an dem anderen Controller mit SD-Karte weiterbasteln...


    Ja, diese spreche ich einfach über den HW-SPI an, der ist ja noch frei, da ich die Daten (wegen 20 Leitungen parallel) eh' per Bitbang rausschieben muss... das geht zwar nur bei Karten bis 2 GB, aber das reicht mir locker.


    Format ist erst mal so geplant: die Karte ist ja in Blöcke á 512 Bytes aufgeteilt, die werden einfach gefüllt - also hier wären es 600 Byte pro Frame, also einfach Block 1+2 = 1. Frame, Block 3+4 = 2. Frame, usw. - die Karte ist also in dem Sinn überhaupt nicht irgendwie formatiert (kein Dateisystem) und enthält reine Binärdaten


    Später mal werde ich dann versuchen, das Ganze mit FAT-Dateisystem zu machen, damit man auch Karten am Rechner beschreiben, und dann da rein stecken kann... aber kein XML, entweder auch wieder was eigenes binäres, oder z.B. das Dateiformat vom LEDWalker, damit man ggfs. auch diese SW dafür benutzen kann.... ;)


    Das dann aber wohl nicht mehr in asm, weil ich da einfach noch keine Bibliotheken für FAT-Dateisystem gefunden habe, in C gibt's die schon - bin also auch nebenbei dran, mich langsam mal mit C anzufreunden... ;)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Format ist erst mal so geplant: die Karte ist ja in Blöcke á 512 Bytes aufgeteilt, die werden einfach gefüllt - also hier wären es 600 Byte pro Frame, also einfach Block 1+2 = 1. Frame, Block 3+4 = 2. Frame, usw. - die Karte ist also in dem Sinn überhaupt nicht irgendwie formatiert (kein Dateisystem) und enthält reine Binärdaten


    Huh, wie willst Du denn dann (sinnvollen/komplexeren) content auf die Karte bekommen, wenn Du sie nur direkt am controller blockweise beschreiben kannst?
    Wobei, es gibt ja auch tools, die Dich am Rechner auf die low-level-Daten zugreifen lassen, aber allzu bequem ist das nicht?
    Oder die Daten am PC generieren, ins gewünschte Format bringen, und via RS232/USB/etc. über den Controller auf die Karte schaufeln?


    bin also auch nebenbei dran, mich langsam mal mit C anzufreunden...


    Das wir das noch erleben dürfen... :D

  • Naja, hab' ich ja schon paar mal hier & da "angekündigt"... ;)

    Huh, wie willst Du denn dann (sinnvollen/komplexeren) content auf die Karte bekommen, wenn Du sie nur direkt am controller blockweise beschreiben kannst?

    Eben genau so - über den Controller, die Karte ist da mehr oder weniger nur ne Speichererweiterung/sowas wie ne Wechselfestplatte...


    In erster Linie soll das Teil live gesteuert werden - wie schon gesagt, ein Kumpel von mir programmiert da (in Java, damit für Mac und PC) ne Ansteuer-SW in der Art von Madrix, mit der man dann auf nem Konzert oder Party das Ding live bespielen kann...


    Und - siehe Beschreibung ein paar Posts oberhalb - wenn die SW dann ein anderes Befehlsbyte vorne dran stellt, dann gibt der Controller die Daten eben nicht direkt an die Matrix aus (bzw. parallel dazu auch noch zur Kontrolle) sondern schreibt sie eben Frame-Weise auf die Karte...


    dann hat man da div. Sequenzen drauf (auf 2 GB passt so einiges), die man dann ohne PC-Anbindung eben über DMX oder Taster direkt am Gerät abrufen kann...


    Also nicht so wie bei LEDwalker - Animationen erstellen, am PC auf Karte speichern, Karte in den Controller stecken - sondern die Karte wird *im Controller* mit Inhalt gefüllt... ist ja wurscht, ob ich an meinen Rechner nun nen Cardreader oder den Controller anschließe...


    mein Kumpel wird das dann schon so machen, dass man die erstellten Animationen zusätzlich auch am Rechner in ne Datei speichern (z.B. zum archivieren, mit anderen Leuten tauschen), und diese auch später mit seiner SW in den Controller übertragen kann... ;) - ist dann praktisch sowas wie ein eigenes, sehr simples Videoformat...


    Und wie gesagt, später mal dann optional evtl. ne SW, die dann einfach direkt LEDwalker-Dateien auslesen kann, weil wieso da noch mal was eigenes zimmern, wenn's die schon gibt...? - mit der SW arbeitet das Ding dann wie ein Ledwalker, nur dass es eben die Daten an 20 Ausgängen parallel rausgibt, damit ich meine Ketten nicht durchverkabeln muss...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • So, hier nun mal ein kleines Update...


    mein guter Freund, der Schulterklopfer, hat mir in den Arsch getreten, äääh, auf die Schulter geklopft, dass da mal was weiter gehen muss - hat mir dann auch angeboten, mir bei der HW zu helfen, sehr nett!


    also haben wir diese Woche bisschen gelötet etc.:





    Kugeln angezeichnet und gebohrt:




    und so eine Kette schon mal (fast, ordentliche Verklebung der Kugeln fehlt noch) fertig:



    hat ca. 2 Stunden gedauert, die nächsten sollten schneller gehen, also noch ca. 30 Stunden für die nächsten 19... bis Ende September soll das fertig sein und auf einer Party zum Einsatz kommen... ;)


    Dass das alles so lange liegen geblieben ist, hat auch was Gutes, ich habe mir noch mal Gedanken über das Konzept gemacht: Zuerst war ja geplant, ein Steuergerät mit Display, großem NT drin etc. zu bauen, das alle 20 Ketten ansteuert (siehe Schema oben).


    ist aber nicht so toll, weil erstens ist die Frage, ob der µC das alles noch auf die Reihe bekommt mit Daten-Umsetzung, Display ansteuern, SD-Karte auslesen etc. - zweitens, entweder ist das Gerät irgendwo unten, dann hat man extrem lange Kabel, oder es hängt oben wo die Matrix befestigt ist, dann muss man immer mit der Leiter rauf, wenn man was umstellen muss/will....


    auch oben gibt's lange Kabel, die Matrix ist ja 6 m breit, wenn das Gerät in der Mitte hängt, brauche ich also zu den äußeren Ketten ca. 4 m Zuleitung - bei den Ketten weiter innen sind dann bis zu 3 m "zu viel" und müssen wieder irgendwie verstaut werden... klar, man könnte auch unterschiedlich lange Ketten machen, dann muss man beim Aufbauen wieder aufpassen, welche Kette man wo hin hängt, alles nicht so toll...


    ich habe zwischenzeitlich im Forum diese schönen Gehäuse erstanden:



    da würde der Controller mit NT aber auch nicht rein passen - Gedanke war nun (weil ich diese Gehäuse verwenden will), dass man das Ganze aufteilt, also immer 5 Ketten an ein solches Gerät (da dann NT drin, dieses hier passt rein zufällig ideal). Da können die Zuleitungen dann auch kürzer sein.


    Zuerst überlegt, wie ich dann die 20 Leitungen da wieder durch verkable, aber, klar, muss ja gar nicht, man kann das ja auch bei mini-DMX so machen, dass sich jeder Empfänger nur die relevanten Bytes aus dem Datenstrom nimmt...


    also werden es nun einfach 4 identische Geräte, jeweils NT drin und ein µC, der seriell Daten empfängt und an 5 WS-Ketten ausgibt...


    das ist eh' besser, weil man so flexibler ist - z.B. man hat nen Raum mit 4 Säulen, kann man um jede Säule 5 Ketten mit Steuergerät hängen, ohne dass man evtl. 20x 20 m Leitung irgendwo hin legen muss... im Prinzip kann das Teil auch völlig autark laufen, halt ein paar Standalone-Programme rein und dann irgendwo ein Banner 5x10 mit Plasma-Animation o.ä. hin gehängt.


    da ich auch RS485 verwende, nehme ich dann wie bei DMX nen XLR-Stecker für die Daten - ist dann reine SW-Sache, das Teil ggfs. auch mal direkt per DMX anzusprechen.


    im Normalfall kommen die Daten aber "live" vom Rechner, oder (das ist dann im Gegensatz zum ursprünglichen Konzept ein extra Gerät) z.B. von ner SD-Karte, wenn man nur ein paar vorgefertigte Animationen abrufen will...


    Schema sieht dann so aus:



    Und für die Programmierung dieser 5x parallel-Ausgabe habe ich mir noch schnell zum testen ne kleine Matrix aus WS2801-Strips (vielen Dank noch mal an turi!) zusammengebaut:



    Ach, ja, die PC-SW ist immer noch nicht fertig, wird nun aber auch aus Performance-Gründen wohl eher C als Java...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

    Einmal editiert, zuletzt von Pesi ()

  • Ein weiteres kleines Update: Letztes WE war der Schulterklopfer wieder bei mir, wir haben diesmal an der SW weiter gemacht.


    Ich habe nun die fertig, die einen Ausschnitt (einstellbar per DIP) aus dem Datenstrom (ähnlich mini-DMX, siehe hier) empfängt, umsortiert, und parallel an 5 Ausgängen an 5 Lichterketten ausgibt.


    Er hat seinen Server (der ist in C geschrieben) etwas angepasst (die neuen Framegrößen etc.) und ein paar "Erzeuger" geschrieben, die Animationen liefern.


    Das System ist so: Mein Controller (i.M. SEDU-Board) empfängt den Datenstrom über USB und verteilt ihn auf die Lichterketten. Am Rechner läuft ein Server, der auf einem Socket auf Daten wartet und diese dann über USB zu mir weiter gibt.


    Wo diese Daten her kommen, ist dann wurscht, ein beliebiges Programm kann RGB-Daten erzeugen und auf diesen Socket schicken, die Matrix zeigt das dann an.


    Beipiel: Hier ein Flash-Programm, das "scannt" das untergelegte Bild ab, der Ausschnitt, der sich in diesem transparentem Rechteck befindet, wird dann auf der Matrix angezeigt.



    Das läuft hier mit 500 kBit/s, ohne Probleme/Ruckler/Aussetzer auch mit 60 fps ;) - wir machen das nun so, dass er einfach die Frames raus schickt, ohne auf Rückmeldung zu warten, mein Controller schaufelt die schnell genug weg. Ist ja auch so üblich, eine Grafikkarte wartet ja auch nicht auf die Rückmeldung vom Monitor, ob der das Bild nun schon angezeigt hat... :D


    So wird das nun mal fertig gestellt, läuft zuverlässig, auch keinerlei Probleme, über die in dem anderen Thread rumgeunkt wurde, dass sie auftreten würden/könnten... ;)


    Wie gesagt, wo die Daten her kommen ist hier egal, wird dann wohl erst mal ne einfache Flash-Anwendung werden, die ein paar Animationen abspielt, im Flash kann man ja auch Buttons etc. machen, um dann die Animation auszusuchen und einzustellen (Speed, Helligkeit, Farbe, etc.).


    ich habe meinem Kumpel die kleine Matrix (die aus dem Video oben) mal zum testen mitgegeben, vorher etwas "verpackt", da ich kein Plexi in der passenden Größe hatte, habe ich einfach etwas Filterwatte drüber, und dann so ne dicke schaumartige Verpackungsfolie festgetackert, so wie man nen Stuhl polstert:




    die LEDs leuchten da durch, sieht ganz nett aus (in echt "verschwimmen" die Punkte noch etwas mehr, ist hier stark abgeblendet):



    das bleibt dann auch so, mir ist schon ne Anwendung dafür eingefallen: bei Partys an der Kasse bekommt man ja immer nen Stempel auf die Hand - da wird dann das Teil hin gelegt, spielt Animationen (Plasma o.ä.) ab. Der Gast legt seine Hand da drauf (weich, bequem) zum stempeln, Touchsensor merkt das und das Teil spielt so ne "Hand wird gescannt"-Animation ab, dann wird die ganze Matrix grün, in dem Moment haut der Kassierer den Stempel auf die Hand, ist bestimmt ein netter Gag... ;)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

    Einmal editiert, zuletzt von Pesi ()

  • Nachdem ich nun zumindest mal so viele Kugeln fertig habe, dass man das Teil aufhängen kann, ohne dass es nach total lächerlich wenig aussieht, gibt's nun mal nen Post mit wenig Theorie-Gelaber und mehr Bildern... ;)


    zum Einsatz gekommen ist das Teil erstmalig letzten Freitag auf einer Party, ich habe wirklich bis kurz vor Beginn gelötet, das ist einfach doch viel mehr Arbeit als gedacht, v.a. das Kabel abisolieren etc.


    deswegen hat mir da auch letzte Woche ein Freund geholfen:



    das ist jetzt ca. die Hälfte der insgesamt gebrauchten Verbindungen - diese Kabel werden dann an die Platinen gelötet, zum Glück hatte ich mir noch nen Maschinenschraubstock gekauft, damit geht das schnell und einfach:



    Wie gesagt, das ist kein Problem, nur das vorbereiten der Kabel - also wenn da jemand nen Tipp hat, wie das einfacher und schneller geht, gerne her damit!


    Flachband und einfach Buchsen drauf pressen wäre theoretisch ne Lösung - aber das ist nicht so stabil, nicht abgeschirmt, und sieht auch nicht gut aus...


    zu den Kugeln gibt es ja oben schon genug Fotos - für den Betrieb sind ja noch die Controller mit Netzteil nötig, die mussten auch noch gebaut werden.


    die HW ist simpel: ein Mega16 mit bisschen Kram rum, halt RS485-Empfänger, Treiber für die Ausgänge, Encoder und LC-Display - das hat alles auf ne kleine einseitige Platine ohne Brücken gepasst:



    hier mal wieder in THT, damit man ggfs, kaputte ICs leichter tauschen kann - der Kleinkram ist aber in SMD auf der Unterseite:



    Dann bisschen programmiert und ausprobiert:



    Board und NT zusammen auf einem Blech, das man in entsprechende Schlitze im Gehäuse schieben kann:



    In das Gehäuse dann Öffnungen für Display, Encoder und die Buchsenplatte hinten gemacht:



    Und Display und Encoder eingebaut:



    so sieht das dann mit der eingeschobenen Trägerplatte aus:



    und von hinten:



    sind schon 10 Bilder, also weiter im nächsten Post...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Zuerst wollte ich die Buchsen hinten einfach in's Gehäuse machen, aber völlig unmöglich, in der Mitte kommt man nicht zum schrauben hin - also kamen alle Buchsen auf eine eigene Platte:



    darüber, weil die hinteren Buchsen gegenüber vom NT sitzen, noch ne Platine zur Isolierung, Kupferfläche an Erde zum Abschirmen:



    das fehlt auf dem Foto, über die Schrauben wurde noch Isolierband gemacht - Gehäuse und alles was damit verschraubt ist, ist aber natürlich auch am Schutzleiter


    die XLR-Kabel sind provisorisch, da sollen Buchsen hin, mein 24-mm-Bohrer ist aber nicht mehr rechtzeitig gekommen...


    so wird das dann mit der Platine innen zusammen in's Gehäuse geschoben:



    das dann schon etwas "vollgestopft" ist, aber geht sich alles aus:




    Deckel drauf, und endlich fertig:





    statt dem kurzen Netzkabel kommt dann noch so ein Kaltgeräte-Anschlussblock hin, zum gleich weiter verbinden...


    so schön und kompakt diese Gehäuse auch sind, beim nächsten Projekt (Matrix 30x30 mit LED-Sticks) nehme ich "normale" Gehäuse, also wo man einfach alles schön rein schrauben und anstecken kann, Deckel drauf und fertig...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Zum Aufbau werden einfach die Ketten um eine Stange gewickelt und mit Gaffa fixiert (bei 2x rumwickeln würden sie eh' schon halten) und an die Controller angesteckt, diese werden einfach mit je 2 kurzen Seilen aufgehängt:




    geplant war da eigentlich, das erst mal in schöner Arbeitshöhe an ner extra Alupipe zu machen, und die dann aufzuhängen, die hatte ich aber in der Hektik vergessen... :whistling: aber auch so sind es nur je ca. 20 Min. zum Auf- und abbauen...


    so sieht das dann insgesamt aus:



    und leuchtet:



    ja, es wurden nur 8 Ketten fertig, bei 5 davon habe ich auch noch die letzten 2 Kugeln weg gelassen (die sieht man da eh' nicht), sonst hätte ich's nicht geschafft - mache halt leider immer alles auf den letzten Drücker... :D


    angesteuert wurde das Ganze über normales XLR-Kabel, dafür ein Interface gebaut, das Mini-DMX empfängt, korrekt mit Rückmeldung (weil Pixelcontroller die braucht, um den Port zu finden), weiter gesendet werden die Daten dann ohne Rückleitung, damit man nicht 2 Kabel verlegen muss - die galvanische Trennung habe ich auch nicht mehr geschafft, hat aber trotzdem problemlos funktioniert...




    und hier das Teil "in Aktion":



    ist die meiste Zeit auf 50% runter gedimmt, weil es sonst zu hell wäre - bei diesen Partys geht es insgesamt eher schummrig/leicht "düster" zu... ;)


    angesteuert wurde es abwechselnd mit Pixelcontroller und Glediator, beide SW sind hier im Forum zu finden...


    jetzt "nur noch" noch 2x so viele Kugeln bauen und 2 weitere Controller, und dann ist dieses Projekt auch endlich mal fertig... :D

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

    Einmal editiert, zuletzt von Pesi ()