Lightshow mit dem Raspberry PI?

2 Antworten

Ok, habe mir ein paar Sekunden von dem Video gerade mal angeschaut.

Erstens ist das eine konkret auf den Track zugeschnittene Lightshow. D. h. die einzelnen Phasen sind auf Übergänge in der Musik abgestimmt.

Zweitens gehen aber in den einzelnen Phasen Audioinformationen mit rein, die dann z. B. für lichtsynchrone Dimmung etc. oder auch teilweise Farbveränderungen genutzt werden.

D. h. unterm Strich läuft das Showprogramm durch mehrere Abschnitte, wo die Programmlogik aktiv irgendwas "schaltet". Und zusätzlich werden in einzelnen Abschnitten dann von einem Audio Input Daten abgegriffen.

Lautstärke-Erkennung in Audiodaten ist ziemlich einfach. Ein A/D-Wandler liefert halt größere Werte bzw. Amplituden, wenn's lauter wird.

Lichtverfärbung anhand des Klangbildes (z. B. Bass=blau, Höhen=rot) kann man realisieren, wenn man das Audiosignal z. B. durch mehrere Butterworth-Filter leitet. Das ist ein recht einfacher Algorithmus, den man im Prinzip auf 2-3 Bildschirmseiten ausprogrammieren kann und der Near-Realtime-Ergebnisse liefert.

Das große Problem wird allerdings sein, dass für ein hoch aufgelöstes Audiosignal so ein Raspi grenzwertig schwach ist. Wenn Du ein 44-kHz-Signal z. B. durch 3 Butterworth-Filter jagen willst, dann ist der Raspi damit schon ziemlich am Schwitzen. Hinzu kommt bei jeglichen I/O-Aktivitäten, dass man beim Raspi tierisch aufpassen muss, über welche Wege die I/O eigentlich läuft. Storage, Netzwerk, USB... alles intern auf USB 2.0 abgebildet. D. h. da gibt es einen echten Flaschenhals, gerade bei Verarbeitung von größeren Datenmengen. Allerdings sind Daten, die via GPIO ausgetauscht werden, davon nicht betroffen.

Eine Lichtsteuersoftware, mit der man sowas wie im Video mit DMX-fähigen Geräten programmieren könnte, habe ich hier vor ein paar Jahren mal für kleine "Showzwecke" (und für's Wohnzimmer :-) zusammengeschmissen unter Linux. Insofern sind ein paar praktische Erfahrungswerte da, was man da so anstellen kann, und wie weit auch ein Raspi da noch mitgeht.

son Arduino hat doch massig Pins...

da reicht doch n Telefondraht (also Twisted-Pair), wobei eine Leitung für GND und die andere für irgendwas OneWire-artiges verwendet wird... unter anderem kann der Chef der Truppe dann ab und zu „beim nächsten LOW ist es 12 URRR und NULLLL Minuhten“ senden...

oda wie jetzt?


RIDDICC  09.09.2017, 21:24

ach so:
jeder Arduino sollte aber diverse Schutzdiode dazu bekommen:
1. eine TVS-Diode zwischen 5V und GND... oder hat er die schon?
2. eine Schottky-Diode zwischen dem OneWire und GND... denn: die im Chip ist nicht genug...
3. eine Schottky-Diode zwischen dem OneWire und 5V... denn: gleicher Grund wie unter 2...

0
RIDDICC  09.09.2017, 21:37
@RIDDICC

ich hab nix besseres als n NCP431 (die Schaltung in Abb. 23. High Current Shunt Regulator) gefunden...

keine Ahnung, wie es die Profis machen... ich glaub, die verbinden auch die GND Pins der Arduinos nicht miteinander, weil nämlich das GND Potential in der einen Ecke des Hauses ganz anders als in der gegenüberliegenden Ecke des Hauses sein kann, so dass dann n erheblicher Ausgleichsstrom fließen könnte...

vielleicht wäre noch n Widerstand von etwa 500Ohm ne gute Idee... zwecks Strom-Begrenzung... :)

0
RIDDICC  10.09.2017, 00:05
@RIDDICC

zur Not könnte man OptoKoppler verwenden... dann braucht man aber drei Kabel (GND, RX, TX) oder sogar vier Kabel (GNDtx/TX, GNDrx/RX)...

0
RIDDICC  10.09.2017, 12:12

oops - ne Herde Raspberrys soll es sein... *kicher* ist aber dasselbe wie bei den Arduinos...

0