review von markus feilner eingearbeitet

This commit is contained in:
Alexander 2023-04-24 12:27:00 +02:00
parent 7bf3e80423
commit 33550c4c87
14 changed files with 176 additions and 218 deletions

View File

@ -1,20 +0,0 @@
# 3D-Druck - Vase mode mal anders
In einer idealen Welt würden wir das gesamte Ei einfach ganz normal drucken. Leider sagte der Slicer für unsere naive erste Konstruktion eine Druckzeit fast einer Woche voraus.
Die zweite und entgültige Konstruktion nutzt zwei Tricks um das 32 Zentimeter hohe Ei in etwa einem Tag drucken zu können.
Der erste Trick ist ein Umstieg auf eine 0.8mm breite Düse.
Der zweite Trick ist eine kreative Verwendung des Vasenmodus. Auf den ersten Blick scheidet eine Vase aus, da zur Befestigung der LED-stripes ein gewisses Innenleben notwendig ist.
Wir nutzen hier die Definition einer Vase aus. Der Slicer fährt auf jeder Lage sturr die äußere Kontur ab. "Außere Kontur" ist hier rein mathematisch definiert. Indem wir einen Volumenkörper von außen dünn einschlitzen, können wir also auch im Innenraum des Eis einen Tunnel für die LED-stripes erzeugen. Das ist in den Abbildungen (vase mode 1) und (vase mode 2) illustriert.
![vase mode 1](grafiken/illustrationen/vase_cad.PNG "Geometrie laut CAD")
![vase mode 2](grafiken/illustrationen/vase_sliced.PNG "Tatsächlich gedruckte Geometrie")
An Boden und Deckel ist der Vasenmodus ungeeignet, da die Überlappung aufeinanderfolgender Lagen bei hier zunehmend klein wird. Daher wird das Ei in drei Teile geteilt, die äußeren beiden drucken wir normal. Trotz dieser Aufteilung ist das verbliebene Vasenteil recht groß, ein Drucker mit mindestens 250mm Bauraumhöhe ist also Voraussetzung.

View File

@ -1,24 +0,0 @@
# Anleitung
0) Organisiere dir an deinem lokalen makerspace folgende Fertigungsmöglichkeiten: Ein 3D-Drucker mit mindestens 25cm Bauraumhöhe. Ein Lasercutter oder eine andere Möglichkeit, um 3mm dickes Sperrholz zuzuschneiden. Ein Lötkolben.
1) Baue an deinem 3D-Drucker eine 0.8mm-Düse ein.
2) Drucke Boden und Deckel mit normalen Druckeinstellungen mit hellem PLA, support ist nicht nötig. Drucke die Kralle in einer anderen Farbe. Support ist ebenfalls nicht nötig, aber falls sich das Druckbett schnell bewegt, kann ein brim helfen.
3) Drucke das mittlere Teil im Vasenmodus mit hellem PLA. Stelle die Anzahl der bottom layers auf Null. Auch hier kann ein brim helfen.
4) Schneide die Holzteile in 3mm Dicke zurecht. Teste, ob sich die Holzteile ineinander stecken lassen.
5) Presse die Muttern in die kleinen Ringe und klebe die kleinen Holzringe mit Muttern an die großen Holzringe. Beachte die Bilder, um die richtige Seite zu treffen. (TODO)
6) Senke mit einem Löteisen die Einsenkmuttern in das Bodenteil.
7) Montiere die Holzteile innerhalb der Vase zusammen und verklebe die Holz-Holz-Kontakte mit Holzleim. Vermeide dabei Express-Holzleim.
8) Stecke das LED-Band in einen Kanal, und kürze sie derart, dass es oben noch 10mm heraus schaut. Ziehe es wieder heraus und schneide für die weiteren Kanäle LED-Streifen mit der selben Länge ab.
9) Löte 3-polige Steckverbinder an das obere Ende der LED-Streifen. Orientiere es dabei so, dass die aufgedruckten Pfeile später nach unten (TODO) zeigen.
10) Schraube den Boden am Mittelteil fest.
11) Ziehe die LED-Streifen in die Kanäle ein.
12) Spiele die Software auf den ESP, z.B. mit Visual Studio Code und der Erweiterung PlatformIO.
13) Verlöte Mikrofon, ESP, Beschleunigungssensor, Spannungsversorgung und die Anschlussleitungen für die LEDs gemäß der Darstellung (Todo).
14) Montiere die gelöteten Teile auf dem gelochten Holzbrett, z.B. mit Hilfe von dünnen Kabelbindern und Heißkleber.
15) Lade den Akkupack, schließe und schalte ihn an.
16) Schraube die Kralle an den Boden.
17) Stecke das Holzbrett in die dafür vorgesehene Aussparung im Inneren des Bodens.
18) Verbinde die Steckverbinder der LEDs.
19) Schließe den Deckel und schraube ihn fest.
20) Stecke die Kralle auf den Stab.

View File

@ -1,18 +0,0 @@
# Beaterkennung
Die erste von zwei Animationen besteht aus einer Welle, welche von jedem zweiten beat bis zum jeweils nächten beat von oben nach unten läuft.
Dafür muss zu jedem Zeitpunkt sowohl die Frequenz als auch die Phase des beats bekannt sein, und das auch über kürzere Störungen oder komplexere Rythmen hinweg.
Die zentrale Idee des Algorithmus ist es, Bandpassfilter mit schwacher Dämpfung als Phasenschätzer zu missbrauchen.
Hierfür wird eine ganze Reihe an Bandpässen mit unterschiedlichen Durchlassfrequenzen parallel geschaltet. Diese Durchlassfrequenzen gehören zu unterschiedlichen beat-Geschwindigkeiten. In unserem Fall von 105 bis 150bpm, der typische Bereich elektronischer Tanzmusik. Auf jeden dieser Bandpässe wird nun die Signalenergie gegeben. Der Bandpass, der sich daraufhin am meisten aufschwingt, hat dann offensichtlich am besten die richtige Geschwindigkeit getroffen.
Im Detail: Zuerst sammeln wir samples vom Mikrofon. Wir ziehen den gleitenden Durchschnitt ab, um ein Signal zu erzeugen, welches um Null herum schwingt. Über jeweils einen chunk - eine Vierzigstelsekunde - summieren wir quadrierte samples, um die Signalenergie in diesem chunk zu erhalten. Alles weitere passiert nun ebenfalls 40 mal die Sekunde. Wir geben die Signalenergie parallel als input auf alle Bandpässe - zufällig ebenfalls 40 an der Zahl. Eine der Bandpässe schwingt sich am meisten auf. Wir gehen davon aus, dass dessen Resonanzfrequenz am nähesten am tatsächlichen beat liegt. Kleine Abweichungen werden durch das ständige feedback fortlaufend korrigiert. Nun haben wir das Problem, dass der Bandpass einmal pro beat schwingt, unsere gewollte Animation aber zwei beats benötigt. Wir müssen also irgendwie die Frequenz halbieren. Dafür verzögern wir das Signal um Pi/4 und schätzen mit der atan2-Funktion die Phase. Mit der bekannten Phase und einem einfachen Zustandsautomat konstruieren wir uns die Phase eines Systems mit halber Frequenz. Diese Phase skalieren wir linear und erhalten so die Sollposition des Maximums der Lichtwelle.
Wir wissen nun also zu jedem Zeitpunkt die Position des Scheitelpunktes der Lichtwelle. Um diese Position herum wird die Helligkeit langsam gesenkt und damit die Welle geformt. Die Maxima für den roten und blauen Kanal sind dabei gegenläufig verschoben, so dass ein räumlicher Farbverlauf entsteht.
Das Ganze ist hier illustriert:
![Illustration Beaterkennung](grafiken/illustrationen/beaterkennung.PNG "Illustration Beaterkennung")

View File

@ -1,12 +0,0 @@
# Fackel
Die zweite Animation ahmt eine Fackel nach, wobei der Brennstoff entsprechend dem beat nachgeführt wird. Entsprechend der Musik wabern dann Feuerschwaden langsam nach oben. Kurzfristige Änderungen in der Musik - z.B. durch bass drops - führen temporär zu größeren Feuerschwaden, was besonder spektakulär aussieht.
Wie bei der ersten Animation normieren wir zunächst das Mikrofonsignal auf einen Durchschnitt von Null und ermitteln daraus in chunks von 10 Millisekunden die Signalenergie. Die Signalenergie wird nun mit zwei unterschiedlichen Tiefpässen gefiltert. Ein Tiefpass hat eine kurze Zeitkonstante und dient nur zur Glättung des Signals. Der andere Tiefpass hat eine Zeitkonstante von mehreren Sekunden und gibt Auskunft über die durchschnittliche Lautstärke.
Der folgende Teil wird alle 45 Millisekunden ausgeführt:
Wenn der schnelle Tiefpass mindestens 15% über dem langsamen Tiefpass liegt, dann gehen wir davon aus, dass aktuell ein beat vorliegt. Die untersten beiden LEDs werden nun mit mit der maximalen Helligkeit angesteuert. Alle anderen LEDs ermitteln ihre Helligkeit aus der durchschnittlichen Helligkeit der beiden LEDs darunter im vorhergehenden Zeitschritt, abzüglich einer kleinen Dämpfung. Das führt dazu, dass die Feuerschwaden nach oben hin dunkler, aber auch größer werden. Das Vorgehen ist im folgenden Bild illustriert:
![Illustration Beaterkennung](grafiken/illustrationen/fackel.PNG "Illustration Fackel")

View File

@ -6,11 +6,12 @@ Ein Flugzeug mit schlagenden Flügeln. Ein handgeschriebenes Schild mit der Aufs
Ungewöhnliche Eindrücke findet man auf dem Fusion Festival genug. Unter anderem ist die deutsche Variante des Burning Man auch bekannt für sogenannte Festivaltotems:
Kunstwerke und Basteleien, die mit auf die Tanzfläche genommen werden, damit sich die eigene Crew auch findet. Mobilfunk sucht man nämlich meist vergeblich.
Heute erzählen wir die Geschichte unseres Festivaltotems. Sie beginnt ein paar Wochen vor dem großen Einsatz mit einer zentralen Idee -
es soll mit Licht auf Musik reagieren. Weiter geht es in unserer Erzählung mit einigen interessanten technischen Rätseln, die es zu lösen gilt. Am Ende steht ein 3D-gedrucktes Ei, gefüllt mit einem
lasergedruckten Holzskelett, LED-Ketten und Elektronik. Es tanzt zum beat, lässt sich über Gesten steuern und verbreitet wo es hinkommt gute Laune.
![fusion 6](grafiken/fusion_bilder/6.jpg "Festivaltotems auf der Fusion")
# Konzept
In diesem Artikel geht es um die Entwicklung unseres eigenen Festivaltotems. Sie beginnt ein paar Wochen vor dem großen Einsatz mit einer zentralen Idee - es soll mit Licht auf Musik reagieren. Am Ende steht ein 3D-gedrucktes Ei, im Inneren befinden sich ein
lasergedrucktes Holzskelett, LED-Ketten und Elektronik. Es tanzt zum beat, lässt sich über Gesten steuern und verbreitet wo es hinkommt gute Laune.
# Grundaufbau
Die Hülle des Eis besteht aus drei vertikal gestapelten 3D-Druckteilen. Die mittlere Komponente ist für schnellen Druck im Vasenmodus ausgeführt - mehr dazu später.
@ -34,21 +35,29 @@ Auf dem Festival hatten wir zwei verschiedene Animationen implementiert, die wir
# 3D-Druck - Vase mode mal anders
In einer idealen Welt würden wir das gesamte Ei einfach ganz normal drucken. Leider sagte der Slicer für unsere naive erste Konstruktion eine Druckzeit fast einer Woche voraus.
In einer idealen Welt würden wir das gesamte Ei einfach ganz normal drucken. Leider sagte der Slicer für unsere naive erste Konstruktion eine Druckzeit fast einer Woche voraus.
Die zweite und entgültige Konstruktion nutzt zwei Tricks um das 32 Zentimeter hohe Ei in etwa einem Tag drucken zu können.
Der erste Trick ist ein Umstieg auf eine 0.8mm breite Düse.
Der erste Trick ist ein Umstieg auf eine 0.8mm breite Düse. Standardmäßig sind bei den meisten Druckern 0.4mm Düsen installiert. Die breitere Düse erhöht die Druckgeschwindigkeit auf ein Vielfaches, auf Kosten der Genauigkeit. Für unser Projekt ist die Genauigkeit aber nach wie vor ausreichend.
Der zweite Trick ist eine kreative Verwendung des Vasenmodus. Auf den ersten Blick scheidet eine Vase aus, da zur Befestigung der LED-stripes ein gewisses Innenleben notwendig ist.
[Erklärbox] Beim 3D-Druck gibt es eine spezielle Druckmethode namens "Vase Mode", die es ermöglicht, hohle Objekte zu drucken. Der Vasenmodus funktioniert so, dass der Drucker nur die äußere Kontur des zu druckenden Objekts aufbaut. Dabei bewegt sich der Druckkopf in einer Spirale nach oben. Dadurch entsteht eine hohle Form, die oft einem Gefäß oder einer Vase ähnelt. Der Vorteil dieser Methode ist, dass sie sehr schnell ist, da nur die äußere Schicht des Objekts gedruckt werden muss. Außerdem spart es Material, da das Innere des Objekts leer bleibt. Das macht den Vasenmodus ideal für den Druck von dekorativen Objekten wie Vasen oder Lampenschirmen. Es gibt jedoch auch Nachteile: Da das Objekt hohl ist, kann es schwierig sein, es stabil genug zu drucken, besonders wenn es groß ist. Außerdem ist das Objekt nur von einer Seite zugänglich, was die Reinigung und Nachbearbeitung erschweren kann.
Wir nutzen hier die Definition einer Vase aus. Der Slicer fährt auf jeder Lage sturr die äußere Kontur ab. "Außere Kontur" ist hier rein mathematisch definiert. Indem wir einen Volumenkörper von außen dünn einschlitzen, können wir also auch im Innenraum des Eis einen Tunnel für die LED-stripes erzeugen. Das ist in den Abbildungen (vase mode 1) und (vase mode 2) illustriert.
![vase mode 1](grafiken/illustrationen/vase_cad.PNG "Geometrie laut CAD")
![vase mode 1](grafiken/illustrationen/vase_cad.PNG "Geometrie wie sie im CAD definiert ist")
![vase mode 2](grafiken/illustrationen/vase_sliced.PNG "Tatsächlich gedruckte Geometrie")
![vase mode 2](grafiken/illustrationen/vase_sliced.PNG "Tatsächlich gedruckte Geometrie beim Vasenmodus")
Die Verwendung einer 0.8mm Düse kommt uns hier entgegen, da sie das übliche Stabilitätsproblem bei Vasen deutlich reduziert.
An Boden und Deckel ist der Vasenmodus ungeeignet, da die Überlappung aufeinanderfolgender Lagen bei hier zunehmend klein wird. Daher wird das Ei in drei Teile geteilt, die äußeren beiden drucken wir normal. Trotz dieser Aufteilung ist das verbliebene Vasenteil recht groß, ein Drucker mit mindestens 250mm Bauraumhöhe ist also Voraussetzung. Wir selbst nutzten einen Voron 2 in der 350mm-Version für das Vasenteil und die Kralle, und einen Prusa Mk 3 für die restlichen Teile.
![drucken 1](grafiken/kitchen_bilder/DSC07977.JPG "Druck der Deckel")
![drucken 2](grafiken/kitchen_bilder/DSC07987.JPG "Druck der Kralle")
An Boden und Deckel ist der Vasenmodus ungeeignet, da die Überlappung aufeinanderfolgender Lagen bei hier zunehmend klein wird. Daher wird das Ei in drei Teile geteilt, die äußeren beiden drucken wir normal. Trotz dieser Aufteilung ist das verbliebene Vasenteil recht groß, ein Drucker mit mindestens 250mm Bauraumhöhe ist also Voraussetzung.
# Holzskelett
@ -63,9 +72,9 @@ In der Praxis überlebten die Eier dank dem Skelett auch die eine oder andere ra
# Software
Softwareseitig kam ein selbst geschriebenes Programm in C und C++ zum Einsatz. Dieses ist strukturiert in verschiedene "apps", welche jeweils unterschiedliche Animationen und Funktionen auf dem Ei ausführen. Eine übergeordnete Kontrollschleife schaltet zwischen den apps umher.
Softwareseitig kam ein selbst geschriebenes Programm in C++ zum Einsatz. Dieses ist strukturiert in verschiedene "apps", welche jeweils unterschiedliche Animationen und Funktionen auf dem Ei ausführen. Eine übergeordnete Kontrollschleife, welche auf Beschleunigungssensor reagiert, schaltet zwischen den apps umher und initialisiert/deinitialisiert diese. Außerdem implementiert die Kontrollschleife einen kleinen Zustandsautomat, um zwischen einem aktiven Modus und einem sleep/Stromsparmodus zu wechseln.
Für das Ansprechen der LED-Streifen nutzten wir die FastLED-Bibliothek, für die Kommunikation mit dem Beschleunigungssensor die ADXL345-Bibliothek.
Für das Ansprechen der LED-Streifen nutzten wir die FastLED-Bibliothek, für die Kommunikation mit dem Beschleunigungssensor die ADXL345-Bibliothek. Visual Studio Code zusammen mit der Erweiterung PlatformIO stellte sich als praktische Entwicklungsplattform heraus.
Insgesamt entwickelten wir fünf apps, wovon jedoch nicht mehr alle produktiv genutzt werden:
- Eine Fackelanimation, die bei lauten beats "Brennstoff ins Feuer schmeißt"
@ -96,7 +105,11 @@ Das Ganze ist hier illustriert:
# Fackel
Die zweite Animation ahmt eine Fackel nach, wobei der Brennstoff entsprechend dem beat nachgeführt wird. Entsprechend der Musik wabern dann Feuerschwaden langsam nach oben. Kurzfristige Änderungen in der Musik - z.B. durch bass drops - führen temporär zu größeren Feuerschwaden, was besonder spektakulär aussieht.
Die zweite Animation ahmt eine Fackel nach, wobei der Brennstoff entsprechend dem beat nachgeführt wird. Entsprechend der Musik wabern dann Feuerschwaden langsam nach oben.
![Fackel](grafiken/kitchen_bilder/DSC07983.JPG "Entwicklung der Fackelanimation")
Kurzfristige Änderungen in der Musik - z.B. durch bass drops - führen temporär zu größeren Feuerschwaden, was besonder spektakulär aussieht.
Wie bei der ersten Animation normieren wir zunächst das Mikrofonsignal auf einen Durchschnitt von Null und ermitteln daraus in chunks von 10 Millisekunden die Signalenergie. Die Signalenergie wird nun mit zwei unterschiedlichen Tiefpässen gefiltert. Ein Tiefpass hat eine kurze Zeitkonstante und dient nur zur Glättung des Signals. Der andere Tiefpass hat eine Zeitkonstante von mehreren Sekunden und gibt Auskunft über die durchschnittliche Lautstärke.
@ -107,22 +120,28 @@ Wenn der schnelle Tiefpass mindestens 15% über dem langsamen Tiefpass liegt, da
# Anleitung
0) Organisiere dir an deinem lokalen makerspace folgende Fertigungsmöglichkeiten: Ein 3D-Drucker mit mindestens 25cm Bauraumhöhe. Ein Lasercutter oder eine andere Möglichkeit, um 3mm dickes Sperrholz zuzuschneiden. Ein Lötkolben.
0) Organisiere dir in deiner Werkstatt oder an deinem lokalen makerspace folgende Fertigungsmöglichkeiten: Ein 3D-Drucker mit mindestens 25cm Bauraumhöhe. Ein Lasercutter oder eine andere Möglichkeit, um 3mm dickes Sperrholz zuzuschneiden. Ein Lötkolben.
1) Baue an deinem 3D-Drucker eine 0.8mm-Düse ein.
2) Drucke Boden und Deckel mit normalen Druckeinstellungen mit hellem PLA, support ist nicht nötig. Drucke die Kralle in einer anderen Farbe. Support ist ebenfalls nicht nötig, aber falls sich das Druckbett schnell bewegt, kann ein brim helfen.
3) Drucke das mittlere Teil im Vasenmodus mit hellem PLA. Stelle die Anzahl der bottom layers auf Null. Auch hier kann ein brim helfen.
4) Schneide die Holzteile in 3mm Dicke zurecht. Teste, ob sich die Holzteile ineinander stecken lassen.
5) Presse die Muttern in die kleinen Ringe und klebe die kleinen Holzringe mit Muttern an die großen Holzringe. Beachte die Bilder, um die richtige Seite zu treffen. (TODO)
5) Presse die Muttern in die kleinen Ringe und klebe die kleinen Holzringe mit Muttern an die großen Holzringe. Beachte die Bilder, um die richtige Seite zu treffen.
6) Senke mit einem Löteisen die Einsenkmuttern in das Bodenteil.
7) Montiere die Holzteile innerhalb der Vase zusammen und verklebe die Holz-Holz-Kontakte mit Holzleim. Vermeide dabei Express-Holzleim.
8) Stecke das LED-Band in einen Kanal, und kürze sie derart, dass es oben noch 10mm heraus schaut. Ziehe es wieder heraus und schneide für die weiteren Kanäle LED-Streifen mit der selben Länge ab.
9) Löte 3-polige Steckverbinder an das obere Ende der LED-Streifen. Orientiere es dabei so, dass die aufgedruckten Pfeile später nach unten (TODO) zeigen.
9) Löte 3-polige Steckverbinder an das obere Ende der LED-Streifen. Orientiere es dabei so, dass die aufgedruckten Pfeile später nach unten zeigen.
10) Schraube den Boden am Mittelteil fest.
11) Ziehe die LED-Streifen in die Kanäle ein.
![elektronik 2](grafiken/kitchen_bilder/DSC07982.JPG "Einschieben der LED-Streifen")
12) Spiele die Software auf den ESP, z.B. mit Visual Studio Code und der Erweiterung PlatformIO.
13) Verlöte Mikrofon, ESP, Beschleunigungssensor, Spannungsversorgung und die Anschlussleitungen für die LEDs gemäß der Darstellung (Todo).
14) Montiere die gelöteten Teile auf dem gelochten Holzbrett, z.B. mit Hilfe von dünnen Kabelbindern und Heißkleber.
15) Lade den Akkupack, schließe und schalte ihn an.
![elektronik 1](grafiken/kitchen_bilder/DSC07978.JPG "Montierte Elektronik")
16) Schraube die Kralle an den Boden.
17) Stecke das Holzbrett in die dafür vorgesehene Aussparung im Inneren des Bodens.
18) Verbinde die Steckverbinder der LEDs.
@ -161,15 +180,10 @@ Vor dem zweiten Abend stellten wir zur Sicherheit noch die Empfindlichkeit der M
Bei der Gelegenheit verringerten wir außerdem die Helligkeit der Animationen.
Weitere Änderungen waren während des Festivals nicht mehr nötig.
Beim Auseinanderbauen stellten wir mit Freude fest, dass die Akkupacks nach einer langen Nacht nicht einmal
die Hälfte ihrer Ladung verloren hatten. Grob geschätzt dürfte die Einsatzdauer bei Benutzung bei etwa einem Tag liegen,
etwa drei im deep sleep.
Wir waren erfreut zu sehen, dass die Akkus nach einer langen Nacht weniger als die Hälfte ihrer Ladung verbraucht hatten. Wir schätzen, dass die Batterielaufzeit bei kontinuierlicher Nutzung etwa einen Tag und etwa drei Tage im Deep-Sleep-Modus beträgt.
Entsprechend war nun der Zeitpunkt gekommen, wo wir gedanklich vom Tüfelmodus vollständig auf den Festivalmodus umschwenken konnten.
Hier eine Impression von der Tanzfläche, um das Werk in einen Kontext zu setzen:
Da alles so gut funktionierte, war nun der Zeitpunkt gekommen, um gedanklich vom Tüftelmodus vollständig in den Festivalmodus zu wechseln.
![fusion 6](grafiken/fusion_bilder/6.jpg "Impressionen von der Tanzfläche")
Wir freuen uns schon auf nächstes Jahr, wenn wir einen Teleskopstab und eine Ladelösung haben werden, die kein Aufschrauben mehr erfordert. Außerdem denken wir bereits über weitere Animationen nach.
Wir freuen uns schon auf nächstes Jahr, dann mit Teleskopstab, sowie einer Ladelösung, die kein Aufschrauben mehr nötig macht.
Wenn ihr Lust bekommen habt, dann meldet euch bei uns! Wir sind vor allem interessiert an neuen Animationen, die wir auf das Ei laden können.

Binary file not shown.

View File

@ -1,10 +0,0 @@
# Holzskelett
Um dem Ei trotz der dünnen Schale ausreichend Steifigkeit zu verleihen, wird es innen durch ein Holzskelett verstärkt.
Dieses ist so konstruiert, dass es sich im Inneren des Vasenteils zusammenbauen und verkleben lässt und es so von innen aussteift.
Gleichzeitig sind alle Teile des Holzskelett prismatisch, lassen sich also im Lasercutter herstellen. Das ist hier dargestellt:
![holzskelett](grafiken/cad/zusammenbau4.png "Holzskelett")
In der Praxis überlebten die Eier dank dem Skelett auch die eine oder andere rauhe Behandlung und Katzenattacke.

View File

@ -1,22 +0,0 @@
# Konzept
Die Hülle des Eis besteht aus drei vertikal gestapelten 3D-Druckteilen. Die mittlere Komponente ist für schnellen Druck im Vasenmodus ausgeführt - mehr dazu später.
Im Inneren der Vase befindet sich zur Stabilisierung ein geklebtes Skelett aus lasergeschnittenem Holz. Dieses ist formschlüssig mit der Vase verbunden und mit dem Boden und Deckel verschraubt.
Im Inneren des Holzskeletts ist eine Holzplatte eingespannt, welche als Träger der Elektronik fungiert.
Das Gesamtkonzept ist in der folgenden Explosionsansicht illustriert:
![explosion](grafiken/cad/explosion.png "Explosionsansicht")
Das Ei sitzt verschraubt auf einem gedruckten Sockel. Dieser enthält einen kreisförmigen Schlitz, um ein handelsübliches Alurohr aus dem Baumarkt aufzunehmen. Die leichte Spielpassung in Verbindung mit den typischen Druckertoleranzen sorgt hier für einen stabilen Reibkraftschluss.
Im Inneren befindet sich ein ESP32 Mikrocontroller, ein Mikrofon, ein Beschleunigungssensor, ein 10Ah Reiseakku und drei WS2812 LED-Bänder.
(DSC07978.JPG)
Auf dem ESP32 läuft ein in C++ geschriebenes Programm, welches zwischen verschiedenen Animationen umschaltet. Die Umschaltung erfolgt durch den Beschleunigungssensor - ein doppeltes Aufstampfen des Stabes auf dem Boden wird hier als Umschaltsignal interpretiert.
Auf dem Festival hatten wir zwei verschiedene Animationen implementiert, die wir hier "Beaterkennung" und "Fackel" nennen. Die Beaterkennung lässt auf jeden zweiten Beat eine Lichtwelle über das Ei laufen, die Fackel bildet ein Feuer nach, welches durch hohe Lautstärke angefacht wird. Nach den beiden Animationen geht das Ei in einen deep sleep, ein weiteres Doppelstampfen bringt es dann wieder auf die erste Animation.

View File

@ -1,4 +1,24 @@
# Bandpass
# Biquad
# Vasenmodus
# Signalenergie
# PT1
Fusion Zauberstab
=================

View File

@ -1,11 +0,0 @@
# Motivation
Ein Flugzeug mit schlagenden Flügeln. Ein handgeschriebenes Schild mit der Aufschrift "Bitte raven Sie hart!". Hängematten im Birkenwald, die von lautem Bass durchgeschüttelt werden.
Ungewöhnliche Eindrücke findet man auf dem Fusion Festival genug. Unter anderem ist die deutsche Variante des Burning Man auch bekannt für sogenannte Festivaltotems:
Kunstwerke und Basteleien, die mit auf die Tanzfläche genommen werden, damit sich die eigene Crew auch findet. Mobilfunk sucht man nämlich meist vergeblich.
Heute erzählen wir die Geschichte unseres Festivaltotems. Sie beginnt ein paar Wochen vor dem großen Einsatz mit einer zentralen Idee -
es soll mit Licht auf Musik reagieren. Weiter geht es in unserer Erzählung mit einigen interessanten technischen Rätseln, die es zu lösen gilt. Am Ende steht ein 3D-gedrucktes Ei, gefüllt mit einem
lasergedruckten Holzskelett, LED-Ketten und Elektronik. Es tanzt zum beat, lässt sich über Gesten steuern und verbreitet wo es hinkommt gute Laune.

View File

@ -1,16 +0,0 @@
# Bandpass
# Biquad
# Vasenmodus
# Signalenergie
# PT1

View File

@ -1,45 +0,0 @@
# Praxistest
Nach vielen Nachtschichten waren wir kurz vor dem Festival endlich soweit und hatten zwei funktionierende Eier.
Auch die mehrstündige, ungepolsterte Fahrt in Eurokisten überlebten alle Bauteile problemlos.
Nach einem kurzen Zusammenbau und Funktionscheck kam nun der erste große Test.
Zu Beginn war das Laufen mit dem Totem noch sehr ungewohnt. Das lag zum einen am hohen Schwerpunkt, zum anderen an der Aufmerksamkeit,
die wir unweigerlich auf uns zogen.
![fusion 1](grafiken/fusion_bilder/5.jpg "Totem auf dem Festivalgelände")
Eine Warnung an dieser Stelle: Das Totem verwandelt eine Festivalnacht zuverlässig in eine Nerdveranstaltung.
Viele interessierte Menschen kamen auf uns zu und stellten Fragen.
*Ist das Ding selbst gemacht? Was für einen Mikrocontroller habt ihr dafür genommen? Wo im Netz gibt es die Anleitung dafür? Kannst du meinem Kumpel nochmal das mit dem double-tap zeigen?*
Besonderen Spaß gemacht hat uns der Austausch mit den makern anderer Totems. So verschieden die Basteleien aussahen, so ähnlich
waren doch oft die zugrundeliegenden Lösungen. Auch ein Sommertrend war klar erkennbar:
![sommertrend 2022](grafiken/memes/esp32_wled_hot.jpg "WLED auf einem ESP32 - so hot right now")
Am ersten Abend hatten wir zum debugging noch ein vu-Meter auf einem der Eier implementiert um die Aussteuerung zu messen.
Daraus folgte die wenig überraschende Erkenntnis, dass die Mikrofone wenige Meter vor der Bühne völlig übersteuern.
Zum Glück funktionierten die audioreaktiven Animationen trotzdem.
Die Beaterkennung konnte vor allem bei Musik mit gleichmäßigem Rythmus überzeugen, während die Fackelanimation
vor allem bei bass drops das Umfeld zum Staunen brachte. Der heimliche Star des Abends war jedoch die double-tap-Funktion.
![fusion 2](grafiken/fusion_bilder/3.jfif "Totem im Einsatz")
Vor dem zweiten Abend stellten wir zur Sicherheit noch die Empfindlichkeit der Mikrofone über die kleine Einstellschraube auf den kleinstmöglichen Wert.
Bei der Gelegenheit verringerten wir außerdem die Helligkeit der Animationen.
Weitere Änderungen waren während des Festivals nicht mehr nötig.
Beim Auseinanderbauen stellten wir mit Freude fest, dass die Akkupacks nach einer langen Nacht nicht einmal
die Hälfte ihrer Ladung verloren hatten. Grob geschätzt dürfte die Einsatzdauer bei Benutzung bei etwa einem Tag liegen,
etwa drei im deep sleep.
Entsprechend war nun der Zeitpunkt gekommen, wo wir gedanklich vom Tüfelmodus vollständig auf den Festivalmodus umschwenken konnten.
Hier eine Impression von der Tanzfläche, um das Werk in einen Kontext zu setzen:
![fusion 6](grafiken/fusion_bilder/6.jpg "Impressionen von der Tanzfläche")
Wir freuen uns schon auf nächstes Jahr, dann mit Teleskopstab, sowie einer Ladelösung, die kein Aufschrauben mehr nötig macht.
Wenn ihr Lust bekommen habt, dann meldet euch bei uns! Wir sind vor allem interessiert an neuen Animationen, die wir auf das Ei laden können.

119
make_artikel/review.md Normal file
View File

@ -0,0 +1,119 @@
Schöner, bildhafter Einstieg, aber der zweite Absatz muss klarer, einfacher
sein. Der Absatz "Heute erzählen wir..." ist zu moderierend, zu bildhaft.
Einfach: "Dieser Artikel zeigt ... "oder "In diesem Artikel geht es um...",
nicht "unsere Erzählung" oder "technische Rätsel" - das ist nicht ganz
zutreffend und lenkt nur ab.
-> Verständlich. Habe es gekürzt und die "Erzählsachen" rausgenommen.
Außerdem ist das Ei nicht "gefüllt" mit dem
Holzskelett, sondern hat nur ein solches im Inneren.
-> Hast Recht, war doof. Ersetzt wie vorgeschlagen.
"Motivation", "Konzept" sind imho keine guten Überschriften. Vor allem
"Motivation" taugt nicht als Artikelüberschrift. Da würde ich eher sowas wie
"Taktiles LED-Totem" oder so, irgendwas "Lyrisches" nehmen (hat mein Ex-Chef
beim linux-magazin geprägt, die Bezeichnung.
-> Motivation ist nicht die Artikelüberschrift, wir haben
laut styleguide nur eine Hierarchieebene für unsere Sektionen, und die
siehst du hier. Der Artikel selbst kriegt noch einen richtigen Titel, keine Sorge ;)
-> Habe jetzt mal aus "Konzept" "Grundaufbau" gemacht
Beispiel:
Dachzeile:
"Mikroprozessor, Mikro, Beats und Bewegung steuern ein LED-Token fürs Fusion
Festival"
Titel:
"Taktiles LED-Ei"
Vorspann:
"Für's Fusion Festival sollte ein mit dem Beat leuchtendes Token her, doch
dafür mussten nicht nur am 3D-Drucker einige knifflige Probleme gelöst werden.
Ich würde ein Bild des Totems in Action an den Anfang stellen, als Aufmacher
und dazu reißerisch als Bildunterschrift schreiben "Ein Ei, selbstgedruckt,
mit LED-Animationen als Fackel oder passend zum Beat der Musik, mit
Gestensteuerung garantiert Aufmerksamkeit auch auf dem Fusion Festival."
Oder so.
-> bin ich bei dir, aber ich glaube die erste seite wird eh komplett
von der redaktion übernommen. ich würde denen dann alle unsere bilder
mitschicken, und dann können die redakteure sich etwas aussuchen.
"Druck im Vasenmodus" sagt mir nix, ebenso kann ich aus den Abbildungen auf
Seite 3 und 4 nicht erkennen, was die aussagen.
-> es gibt ja in der make: diese Erklärboxen, die über Artikel verteilt sind.
Ich habe eine Erklärbox über den Vasenmodus geschrieben.
Der Umstieg auf eine 0.8mm- Düse ist cool, aber ihr solltet sagen welche
Düse ihr vorher hattet und warum die nicht ging.
-> habe ein paar Sätze dazu geschrieben, wie man mit der Düsenbreite
zwischen Geschwindigkeit und Qualität abwägen kann
Überhaupt: Ihr habt gar nicht beschrieben, welchen 3D-Drucker ihr verwendet
habt? Ein Textkasten mit den Specs wäre cool, vielleicht sogar ein Foto davon.
-> wir haben zwei Drucker verwendet, ich habe beide Modelle nun erwähnt
und ein paar Fotos vom Druckprozess ergänzt. Specs zu gleich zwei Druckern
erscheint mir übertrieben
Ein "selbstgeschriebenes Programm in C und C++" erscheint mir nicht sehr
präzise. Lieber ein, zwei halbsätze mehr und genauer. In den Abschnitten
"beaterkennung" und "Fackel" seid ihr ja auch sehr detailliert, aber halt auf
der Meta-Ebene, nicht auf der ebene des Codes - das würde ich mir etwas mehr
wünschen.
-> ich habe mein bestes gegeben und noch etwas ergänzt,
da tue ich mich aber ehrlich gesagt schwer. auf der metaebene ist
da halt auch nicht viel, im detail ist da hingegen sehr viel,
was aber wohl auch nicht interessant ist. bzw wir wollen ja das repo
public machen, für detailinteressierte.
Das Ende gefällt mir sprachlich nicht mehr so. Bis "nicht mehr nötig." ist
alles gut, aber vor allem der Absatz "Entsprechend" scheint mir nicht sehr
inhaltsvoll - für Leser
-> Ja stimmt, bin ich auch nicht ganz zufrieden.
Ich bin zusammen mit ChatGPT nochmal drüber.
Wobei ich dann nochmal manuell drüber musste,
da er im Deutschen teilweise Grammatikfehler macht.
Auf dem Festival-Foto sehe ich das Ei nicht, das dürfte auch für den Druck in
einem Magazin vermutlich zu dunkel sein.
-> Stimmt, das Bild passt das nicht hin.
Ich habs an den Anfang, dort ergibt es Sinn.
Ich würde den Schluss anders machen: Ich würde vermutlich eine
Zwischenüberschrift: "Das Ei im Einsatz" oder so machen, die ich vor den
Absatz "Am ersten Abend" platzierte.
-> Die make: erlaubt laut style guide nur eine Hierarchieebene.
Zwischenüberschriften gibts also nicht.
Eine weitere Zwischenüberschrift "Ausbaufähig" vor dem Absatz mit den
Akkupack
-> ditto
aber da würde ich vor allem die Info der Einsatzdauer betonen, nicht
dass ihr das beim Auspacken festgestellt habt. Eher noch so, dass man das
zerlegen muss, um die Akkuladung abzulesen (da gibt's auch Bluetooth-Akkus...)
-> das mit dem auspacken hab ich rausgenommen
Dann könntet ihr auch drüber schreiben, dass ihr Euch jetzt bis zum nächsten
Festival weitere Animationen einfallen lasst.
-> ergänzt wie vorgeschlagen
Und ich bin gespannt, ob Euch der Redakteur den Call-to-Action am Ende
durchgehen lässt ich würde das auch in einen Textkasten auslagern.
-> ich hab den call-to-action rausgenommen. wir wollen unser repository
sowieso verlinken, wer motiviert ist kommt auch auf die idee da einen
pull-request zu machen

View File

@ -1,17 +0,0 @@
# Software
Softwareseitig kam ein selbst geschriebenes Programm in C und C++ zum Einsatz. Dieses ist strukturiert in verschiedene "apps", welche jeweils unterschiedliche Animationen und Funktionen auf dem Ei ausführen. Eine übergeordnete Kontrollschleife schaltet zwischen den apps umher.
Für das Ansprechen der LED-Streifen nutzten wir die FastLED-Bibliothek, für die Kommunikation mit dem Beschleunigungssensor die ADXL345-Bibliothek.
Insgesamt entwickelten wir fünf apps, wovon jedoch nicht mehr alle produktiv genutzt werden:
- Eine Fackelanimation, die bei lauten beats "Brennstoff ins Feuer schmeißt"
- Eine Animation mit Beaterkennung, die sich mittelfristig in Frequenz und Phase an die bpm anpasst
- Ein vu-Meter, um die Aussteuerung des Mikrofons zu testen
- Eine fft-Anzeige, zu Testzwecken
- Deep sleep - das Ei hat keinen Ein/Ausschalter, diese app ermöglicht aber eine recht lange Zeit im standby
Für das Umschalten zwischen den Apps verwendeten wir interrupts seiten des Beschleunigungssensors. Die ADXL345-Bibliothek bietet hier bereits die Möglichkeit, um die nötigen Parameter eines double taps einfach einzustellen. Sobald das Ei mit dem richtigen zeitlichen Abstand und der richtigen Beschleunigung zwei mal bewegt wird, wird ein double tap ausgelöst und die app umgeschaltet.
Weitere apps sind leicht ergänzbar. Es muss jeweils nur eine init, eine deinit, und eine loop-Methode definiert werden.