Drucken
Zugriffe: 1674

Die ursprüngliche Idee dazu ist nicht von mir. In Youtube findet man diverse Lösungen um ein kleines Feuerwerk mit WS2812-Leuchtdioden zu realisieren. Die meisten sind jedoch gelinde gesagt, grottig. Ein einziges Video hat mich dann doch begeistert:

 

So habe ich mich entschlossen so etwas in klein nachzubauen. Ich habe weder den Platz noch eine entsprechende Werkstatt um mit einem nicht vorhandenen Schweißgerät so eine tolle Konstruktion zu machen. Aber um es gleich vorweg zu nehmen, wer die Möglichkeiten hat, kann mit einigen wenigen Änderungen auch das große Outdoor-Feuerwerk bauen, denn die Leuchtdiodenketten sind kompatibel, was die Ansteuerung an geht.

 

Die Vision

Meine Idee ist die, dass wenn das Projekt mehreren Leuten gefällt, und die das "OpenFire" nachbauen, dass so was wie eine Community entsteht und immer wieder neue Effekte programmiert werden können. Außerdem würde ich dann den Nachbau vereinfachen in dem die Leiterplatten als fertig layoutete Files hier zur Verfügung gestellt werden. Die Zukunft wird es zeigen. Welches Potential in der Lösung steckt. Der Sourcecode würde natürlich auf github gehostet und jeder könnte daran rum entwickeln :-)

Das Projekt ist in mehrere Stufen geteilt. Die erste Stufe ist ein Nachbau der Lösung wie oben beschrieben als "Proof of Concept". In der Zweiten Stufe will ich die LED einzeln ansteuern. Dazu gibt es zwei Lösungen die beide parallel getrieben werden. 

 

Das bin ich, und rechts zur Erläuterung, welche Komponenten wie bezeichnet wurden:

 vlc37

 

Konzept

 

Für OpenFire gibt es viele Varianten, deshalb will ich hier kurz auf die Topologie eingehen. Zum Einsatz kommen "intelligente" Leuchtdioden (WS28xx) die entweder die Ansteuerung in der LED haben oder kleine Platinen, die mit einem Ansteuer-Chip und drei Leuchtidioden zusammen vergossen sind.

OpenFire1

Die einfache Topologie dies obigen Videos sieht so aus, das 20 Stränge a 15 LED parallel betrieben werden. 

Das hat mehrere Vorteile, aber auch einen Nachteil. Der Vorteil ist dass die Streifen ohne jede Rückführung auskommen. Es kann also 20 mal der Din, 5V, GND miteinander verbunden werden, dann kommt der mechanische Aufbau und fertig ist die Laube. 

So was bekommt man locker an einem Nachmittag aufgebaut. 

Der Nachteil ist, dass nur konzentrische Effekte dargestellt werden können. Das ist schon sehr schön, aber bei weitem nicht alles, was nahezu mit der gleichen Hardware möglich wäre.

 

OpenFire2

Hier wird am Ende jeden Strings der Dout wieder nach zurück geführt. Auf der Platine werden die Strings miteinander in Serie, nicht parallel geschaltet. Auf die Weise kann nun jede LED einzeln angesteuert werden. Das bedeutet, dass asymmetrische Effekte (Wasserfall, Komet) und auch Effekte wie Päonien möglich sind. Mit dieser kleinen Änderung ergeben sich neue Welten. 

Die Nachteile der Lösung sollen aber auch nicht verschwiegen werden:

 

Wer das Zurückführen der Datenleitungen vermeiden will, muss eine andere Lösung wählen, wobei wir bei der dritten Version wären:

OpenFire3

Bei der Lösung werden die Stränge nicht in Serie gespeist, sondern jeder Strang bekommt seinen eigenen Prozessorpin. Das war der Grund, warum ich auf die Library FastLED umgestiegen bin. Die unterstützt diesen Modus.

Diese Lösung hat vor und Nachteile. Ich fange einmal mit den Vorteilen an:

Die Nachteile:

 

Ich habe diese Lösung noch nicht probiert. Aber sie sollte funktionieren. Wer es eimal ausprobiert hat, bitte eine Email an mich.

 

 

 

Memory-Mapping

Die gute Nachricht: nach einigen Überlegungen wie der Speicheraufbau (Mapping) am günstigsten ist, habe ich folgendes für die drei Lösungen festgelegt: 

 

 Damit ist die Ein-Ketten-Lösung und die Multistring-Lösung vom Aufbau im Speicher gleich, d.h. der Code sollte bis auf einen Schalter der die Lösung definiert, gleich sein. Dadurch sind auch die zu programmierenden Effekte kompatibel mit beiden Konzepten.

Vorher hatte ich noch ein Schattenregister für das einfachere einschieben von Effekten vorgesehen, aber das hat das Konzept inkompatibel gemacht. 

 

Für den Sound habe ich vorerst ein MP3-Modul vorgesehen (Stückliste). Dieses ist billig und funktioniert gut. Allerdings wäre zum Schluß eine Teensy 4.1-Lösung mein Wunschtraum. Dieses Modul hat eine SD-Karte für Updates/Effekte/MP3-Files, genügend Pins für die Multistring-Lösung und in jedem Fall völlig ausreichend Rechenpower selbst für ausgefallene Effekte und es ist rech klein. Des weitern hat es auch einen Soundausgang. Was zu einer kompakten Lösung führen würde.

Natürlich können alle Alternativen mit LED-Ketten oder LED-Streifen (WS2811, WS2812) gebaut werden

 

 Varianten

OpenFire ist enorm variabel konzipiert. Varianten in der Größe:

 

Man kann alle Strings

 

OpenFire kann mit einem

Open Fire kann für den

 

Bei allen Varianten können die LED-Strings

 

Es gibt eine Variante

 

Falls mit Ton kann ein

für die akustische Untermalung sorgen.

 

OpenFire kann

 

Als Prozessoren können alle benutzt werden, die die Librarary FastLED unterstützt, wie z.B.

 

Neben der beschriebenen Variante 20 Strings

 

Ach ja, 

OpenFire unterstützt natürlich auch alle LED-Streifen, die die FastLED-Library unterstützt, z.B.:

Bei der 12V-Variante muss natürlich die Stromversorgung angepasst werden.

 

Der Variantenreichtum ist kaum begrenzt, allein durch die hier aufgezählten Beispiele sind bereits 6912 Varianten möglich. Derzeit habe ich 5 davon gebaut