Hallo zusammen! Ich habe zwar Ahnung von IT und Programmierung, aber Mikrokontroller sind mir absolutes Neuland, daher verzeiht bitte die eine oder andere Idiotenfrage. Ich beschreibe mein Problem mal in seinem ganzen Umfang, eh es späer Fragen gibt, ich hoffe das ist nicht TLDR;. Ausgangssituation: Ich habe ein Nebelportal gebaut (Auslass auf der Innenseite), mit integrierter LED Beleuchtung auf der Vorder- und Rückseite. Die LEDs sind WS2813 und fallen damit protokollseiteig in die 2811er Familie. Angesteuert wird das ganze im Moment durch einen X2 Music Controller Marke China. Das ganze ist phsysikalisch so ausgeführt, das es 4 Halbseiten gibt und der X2 über einen 4-Fach Splitter angeschlossen ist. Pro halbseite sind rund 90 Neopixel anzusteuern, macht in Summe 360. Die Nebelmaschine hat einen eigenen kabelgebundenen Kontroller über einen 5-Pol Eurostecker. Zielstellung grob: Ich möchte mit einem eigenen Kontroller das ganze etwas aufpeppen und in der Lage sein eigene Programme live zu fahren, als auch intelligente Auto Modi. Dazu soll ein Mikrokontroller integriert werden. Das ganze soll als Parallelsystem zum X2 ausgeführt werden, so dass dieser als Fallback weiter dienlich ist. Als Bonusfunktion wäre interessant, die Daten vomn X2 in den Mikrokontroller hinein zu streamen und dort weiter zu Manipulieren. Für all das braucht es dann logischerweise ein vernünftiges fernbedienbares Interface. Idealerweise eine Lösung die auf nem Smartphone funktioniert. Die Nebelmaschine soll auch über den Kontroller automatisiert werden, dazu werde ich den Kabelkontroller Emulieren müssen - das soll hier aber nicht der primäre Gegenstand sein. Als weiteres Gimmick will ich einen Ultraschall Sensor einbauen um beim durchschreiten des Portals automatisch Aktionen mit den Leds und dem Nebel auslösen zu können. Überlegungen Soweit: Mir ist klar, das das ein ambitioniertes Unterfangen ist. Mit einem Arduino habe ich zwar schon mal WS281X gesteuert, aber der hat schlicht nicht die Resourcen für das was die Software können soll. Nächster Kandidat wäre daher ein Raspberry. Einige Freunde haben mir schon geraten, in diesem Fall einen Arduino als IO Modul vorzulagern da dessen Ports wohl weniger empfindlich sein soll. Infolge entstand mein Plan A: Man nehme einen Arduino und einen Raspberry. Den X2 kann ich mittels Relais vom Restlichen System trennen, so das dieser als Default Option verfügbaar bleibt auch wenn der Mikrokontroller aus ist. Den Arduino würde nur als Schnittstelle nach aussen nutzen und per USB vom Raspberry mit aktuellen Frames füttern. Den Raspi könnte ich dann wie gewohnt mit eine Java-App mit Swing versehen (ja ich weis- das ist wahrscheinlich nicht die effizienteste wahl, aber das kann nich halt gut). Dann über Ad-Hoc Wlan und Remote Desktop drauf zugreifen zum Steuern. Vorhandene Bedenken: Bei weitergehender Recherche bin ich skeptisch geworden, ob mein Vorhaben nach Plan A realisierbar ist und habe keine Lust aufs falsche PFerd zu setzen um später festzustellen, das alles für die Katz war weil ich die Plattform wechseln muss, oder aber nicht realisierbare Ziele anstrebe. Nach dem was ich gelesen habe, übersteigt die maximale Pixelanzahl von allen 4 Halbseiten schon das Mixmimum was ein normaler Arduino Uno verkraftet. Auserdem muss ich ja 4 Stripes parallel ansteuern und der Arduino ist soweit ich weis ein single Task Prozessor. Wenn ich eine der bekannten LED-Bibliotheken prallel nutze, dürfte ich letztlich in irgendwelche timing oder synchronisaionsproblemen laufen. Ein gewisser Josh hat wohl schon 8 Strips prarallel angesteuert aber in wieweit dies proof-of-concept Lösung ausgereift ist kann ich nicht beurteilen. Davon abgesehen will ich ja obendrein noch, das mir der Arduino einen Stream-Input vom X2 realisiert, die Daten vom Ultraschall-Sensor weiterleitet, den Nebelmaschinen-Controller emuliert und die Releais für den X2 steuert. Das ich mit Java wahrscheinlich auf fürchterliche Timings komme davon wollen wir mal garnicht reden, weiss ich. Da müsste ich mit reduzierter Framerate Leben. Im Zweifel muss die Steuersoftware dann nach C++ portiert werden sobald ich das Framework in Java zum laufen bekommen habe. Meine konkreten Fragen: a) Welche Hardware empfehlt Ihr? Kann ich mein Vorhaben nach Plan A realisieren? Was empfehlt Ihr als Alternativen? Sollte ich lieber unterhalb des Raspis mehrere Arduinos parallel verwenden, zb für jede Halbseite einen, einen für den Input, einen für Nebelmaschine und Ultraschall? Sollte ich vielleicht ganz was anderes als Arduinos und Raspis nehmen? Ich habe jetzt erst gesehen das es auch Kontroller wie den Beaglebone gibt, mit 2 integrierten Echtzeiteinheiten - wäre das evntuell die Lösung für mein Problem? b) Speziell das Thema Ws281X Stream Input scheint ja kein populäres Feld zu sein. Kennt jemand eine anwendbare Lösung für irgend einen Mikrokontroller ohne die Ws281X Signale von der untersten Ebenen an dekodieren zu müssen? Ich weis das ich mir hier einiges vorgenommen habe als blutiger Einsteiger, daher will ich die übergeordnete Steuersoftware auch als modulares Framework entwickeln, so dass einzelne Elemente wie zb. Nebelsteuerung oder den X2-input später realisieren kann. Danke fürs durchlesen und Rat geben!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.