Inhaltsverzeichnis:

So erstellen Sie einen Frequenz-Audiovisualisierer für ein Kostüm (Arduino-Projekt) - Gunook
So erstellen Sie einen Frequenz-Audiovisualisierer für ein Kostüm (Arduino-Projekt) - Gunook

Video: So erstellen Sie einen Frequenz-Audiovisualisierer für ein Kostüm (Arduino-Projekt) - Gunook

Video: So erstellen Sie einen Frequenz-Audiovisualisierer für ein Kostüm (Arduino-Projekt) - Gunook
Video: Audio Visualisierung / Audio Spektrum erstellen | Filmora 12 Tutorial 2024, November
Anonim
Image
Image
Materialien und Preise
Materialien und Preise

In dieser Instuctable werde ich Tipps, Pläne und Codes geben, um einen aufregenden Audiovisualisierer zu bauen, der in einen Glasfaserschaumanzug eingebaut ist. Auf dem Weg werde ich hilfreiche Schritte und zusätzliche Codes teilen, die einige, die arduino FFT-Bibliotheken in ihre Projekte implementieren möchten, nützlich finden könnten.

Schritt 1: Materialien und Preise

Bevor ich den Schaumstoffanzug herstellte, habe ich zuerst ein Array erstellt, um zu lernen, wie die FFT-Bibliothek funktioniert. Die benötigten Materialien sind:

  1. 2x 30 Neopixel WS2812B Streifen………………………………………………………….$3,22 pro Streifen
  2. Arduino uno (gebrauchtes Chinesisch)………………………………………………………………Bereits im Besitz
  3. Kabel anschließen…………………………………………………………………………………. Bereits im Besitz
  4. Externes Netzteil………………………………………………………………………. Bereits im Besitz
  5. Montagefläche (gebrauchter Karton)……………………………………………………Bereits im Besitz
  6. LM386 Audioverstärkermodul…………………………………………………………..$8,98 für 5 Einheiten
  7. 3,5-mm-Stereo-Audio-Stecker auf AV 3-Schrauben-Anschlussbuchse……….$6,50 für 5 Einheiten
  8. 3,5-mm-Stereo-Klinke weiblich zu weiblich………………………………………………..$5,99 für 6 Einheiten
  9. Steckbrett………………………………………………………………………………………Bereits im Besitz

Um schließlich das Setup für einen Anzug mit Mikrofon zu übernehmen, ist Folgendes erforderlich:

  1. 19 Neopixel-Streifen……………………………………………………………………………………………………………………………………………………………………………
  2. 5 Neopixelstreifen……………………………………………………………………….. Aus derselben Rolle schneiden
  3. Arduino nano (gebrauchtes Chinesisch)……………………………………………………. 3,00 USD (5 für 15 USD)
  4. Kabel anschließen…………………………………………………………………………. Bereits im Besitz
  5. Talentcell Wiederaufladbarer 6000mAh Li-Ion Akku…………………………….$29,99
  6. 3,5-mm-Stereo-Audio-Stecker auf AV 3-Schrauben-Anschlussbuchse….. 6,50 $ für 5 Einheiten
  7. 3,5-mm-Stereo-Klinke weiblich zu weiblich………………………………………..$5,99 für 6 Einheiten
  8. Schalter…………………………………………………………………………………. Aus kaputtem Auto gezogen
  9. Ein Kostüm……………………………………………………………………………….$50 für verschiedene Artikel

Schritt 2: Montage und Verdrahtung

Montage und Verdrahtung
Montage und Verdrahtung
Montage und Verdrahtung
Montage und Verdrahtung
Montage und Verdrahtung
Montage und Verdrahtung

Beginnen Sie mit zwei Streifen von 30 WS2812 LED-Streifen und schneiden Sie sie entlang der Schnittlinien auf 5 LED-Streifenlängen. Kleben Sie diese Streifen auf eine ebene Fläche. In meinem Beispiel habe ich Karton verwendet. Verdrahten Sie dann die Komponenten wie gezeigt zusammen. Stellen Sie sicher, dass genügend Zeit verwendet wird, um gute Lötpunkte zu gewährleisten. Um sicherzustellen, dass sie alle richtig funktionieren, verwenden Sie die Beispiele in der Neopixel-Bibliothek von Adafruit (das Beispiel "Straintest" funktioniert hervorragend).

Schritt 3: Arduino-Code

Arduino-Code
Arduino-Code

Für dieses Projekt werden nur zwei Bibliotheken benötigt.

Für die FFT habe ich ArduinoFFT von Open Music Lab verwendet https://wiki.openmusiclabs.com/wiki/ArduinoFFT. Stellen Sie sicher, dass Sie die Installationsanweisungen genau befolgen, sonst funktioniert es nicht. Nach korrekter Installation bekam ich immer noch Fehlermeldungen bezüglich einer "ungültigen Bibliothek", aber bei mir funktionierte immer noch alles. Kommentieren Sie, wenn Sie feststellen, was ich übersehen habe. Für die Neopixel habe ich die NeoPixel-Bibliothek von Adafruit verwendet (wie bereits erwähnt). Ich empfehle die Verwendung des Library Managers innerhalb der Arduino-Software zur Installation.

Die SuitFFT-Datei ist der Code, der auf dem Suit mit allen zusätzlichen Eingaben von meinem Controller ausgeführt wird. LightShowFFT ist für das 60 LED-Array des Aux-Eingangs.

Beide Codes können schneller ausgeführt werden, indem N reduziert wird. N in meinen Beispielen ist 256 und es wurde festgestellt, dass es für meine Projekte mehr als geeignet ist. Ich habe experimentell festgestellt, dass das gesamte Audiospektrum weit über 9 kHz hinaus funktionierte, wie im nächsten Schritt getestet!

Schritt 4: Was macht die FFT?

Image
Image
Was macht die FFT
Was macht die FFT

Eine FFT oder Fast Fourier Transformation nimmt ein Signal und transformiert es in den Frequenzbereich. Was jedes der Lichter anzeigt, ist ein Frequenz-Bin. Da es sich bei der FFT um eine mathematisch komplexe Berechnung handelt, kann der Code schneller ausgeführt werden, indem die Anzahl der Abtastwerte begrenzt wird. Allerdings leidet die Frequenzauflösung. Aus Mangel an Worten ist die FFT im Arduino ein Balanceakt zwischen: Abtastrate, Anzahl der Abtastungen, Schleifenzeit und mehr. Ich ermutige andere, mit den Einstellungen zu spielen, um herauszufinden, was für ihr eigenes Projekt am besten funktioniert.

Jetzt ist es Zeit, den Anzug zu machen.

Schritt 5: Kostümtipps

Kostüm-Tipps
Kostüm-Tipps
Kostüm-Tipps
Kostüm-Tipps
Kostüm-Tipps
Kostüm-Tipps

Mein Kostüm wurde aus Schaumstoff hergestellt, wo viele andere veröffentlichte Instrucatables das Thema besser behandelt haben. Der Unterschied zu meinem war, dass ich zusätzliche Schritte zu Bondo, Fiberglas und Farbe unternommen habe. Tipps dafür sind wie folgt.

  • Machen Sie großartige Vorbereitungsarbeiten (Taping, Maskierung usw.), da dies später einen großen Zeitunterschied ausmacht
  • Bondo und Fiberglas immer in kleinen Mengen mischen
  • Verwenden Sie Bondo, um Lücken zu füllen
  • Verwenden Sie Glasfaserharz zum Versiegeln und Verstärken
  • Verwenden Sie Glasfasergewebe, um Schwachstellen besser zu versteifen
  • nimm dir Zeit und sei geduldig mit deiner Arbeit
  • Zum Schleifen

    • 40-100 Körnung zum Abtragen von Material
    • Körnung 100-400 für Primervorbereitung
    • 400-1000 Körnung zum Schleifen von Grundierung
    • 1000-3000 Körnung zum Schleifen von Farbe

Um die Neopixelstreifen zu montieren, habe ich Heißkleber verwendet, um die Streifen an Ort und Stelle zu fixieren. Einige Herausforderungen bestehen nun darin, es batterieversorgt, Mikrofonerkennung, Controller-betrieben und mehr zu machen.

Schritt 6: Erstellen oder Auswählen eines Controllers, Verdrahten und Code

Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren
Einen Controller erstellen oder auswählen, ihn anschließen und codieren

Jeder Schalter oder Schalter können verwendet werden. Für mein Projekt fand ich die Fenstersteuerung eines 96 Honda Prelude großartig. Nachdem ich die Schalter aus ihrem Gehäuse entfernt hatte, habe ich ein Multimeter im Durchgangsmodus verwendet, um herauszufinden, welcher Draht was getan hat, sobald die Schalter gedrückt wurden (beachten Sie, dass Schalter manchmal den Durchgang unterbrechen). Ich beschloss, die umgeschaltete Fenstersperre zu aktivieren, die Steuerung vor versehentlichen Treffern zu sperren, das Fenster hoch und runter für die Helligkeitssteuerung und den letzten Schalter für "Lichtmodi".

Damit die Schalter richtig funktionieren, werden Pulldown-Widerstände benötigt. Normalerweise funktionieren 50-100-kΩ-Widerstände, aber einige Schalter mussten einen viel niedrigeren Widerstand (einige etwa 300 Ω) verwenden, um die Spannung so zu ändern, dass der Arduino den digitalen Eingang richtig unterbricht (ungefähr weniger als 0,3 * Vcc für niedrige und größere als 0,6*Vcc für hoch). Jeder, der dies tut, muss Schalter für Schalter gehen, vorzugsweise zuerst mit einem Steckbrett, um sicherzustellen, dass der Controller ordnungsgemäß funktioniert.

Nachdem ich den Schalter herausgefunden hatte, lötete ich die Komponenten mit dem gezeigten Diagramm zusammen. Verwenden Sie eine Leiterplatte, um die Komponenten besser zu fixieren. Sehen Sie sich das Bild für eine detaillierte Ansicht an. Das 19-LED-Array geht den Rücken meines Anzugs hinunter und das andere auf der Vorderseite als Indikator dafür, was vor sich geht.

Um den Controller am Anzug zu befestigen, habe ich Heißkleber verwendet, um ihn zu platzieren. Dann habe ich kleinere Schaumstoffkeile gemacht und sie auch heißgeklebt, um den Controller zu unterstützen.

Schritt 7: Letzter Schliff

Letzter Schliff
Letzter Schliff
Letzter Schliff
Letzter Schliff
Letzter Schliff
Letzter Schliff

Schneiden Sie zum Abschluss Schlitze in den Schaumstoff, um den Draht hindurchzuführen. Sichern Sie die Drähte mit Heißkleber. Für zusätzliche Details kaufte ich auch ein paar zusätzliche Artikel, um "den Deal zu besiegeln". Ich dachte mir… wenn Sie in einem leichten Anzug lächerlich aussehen wollen, gehen Sie den zusätzlichen Schritt!

Schritt 8: Das ist es! (Plus Tipps zur Fehlerbehebung)

Das ist es! (Plus Tipps zur Fehlerbehebung)
Das ist es! (Plus Tipps zur Fehlerbehebung)

Vielen Dank für Ihren Besuch in meinem instuctable und viel Spaß Sie DIY-ers!

Fehlerbehebungstipps aus Projekterfahrung:

  • Wenn sich Lichter seltsam verhalten (flackerndes Licht, nicht alle richtig funktionieren, ungewöhnliche Farben)

    • Schlechte Stromversorgung der Lampen

      • Mehrere Netzteile
      • Nicht aneinanderreihen, so können Neopixel aneinandergereiht werden
      • Verlegen Sie zusätzliche Stromleitungen zu den Streifen
    • Codeproblem

      • Überprüfen Sie, ob die Anzahl der Lichter korrekt ist
      • Überprüfen Sie, ob der Code Lichter und Frequenzfächer korrekt anzeigt
    • Schlechte Stromversorgung für Arduino

      Stromversorgung erhöhen

    • Spannung von Arduino zu Neopixeln aus

      Verwenden Sie dasselbe Netzteil, um beide mit Strom zu versorgen

  • Licht an, aber kein FFT

    • Kabel vom Verstärker und Verstärkerleistung, Masse und Eingang prüfen
    • Verstärkerverstärkung erhöhen/verringern
    • Schlechte Stromversorgung der Lichter

Empfohlen: