Wir sammeln Farbmusik für das neue Jahr

Bild

Hallo allerseits!

Bald ein neues Jahr und Sie müssen irgendwie Ihr Zimmer für den Urlaub auf originelle Weise dekorieren. Dafür ist Farbmusik ideal, basierend auf Arduino und ws2812b LED-Streifen.

Ich habe letztes Jahr Farbmusik gesammelt. Die Montage dauerte ungefähr 3 Stunden. Ich verbrachte viel Zeit damit, den Code zu analysieren und zu modifizieren, und machte einen Ausflug in den Laden, um ein Aluminiumprofil und Knöpfe zu bekommen.

Die Besonderheit dieser Farbmusik besteht darin, dass sie nicht an die Quelle des Audiosignals angeschlossen werden muss, da sie dank des eingebauten Mikrofonmoduls MAX9812 Audiodaten empfängt. Es ist über einen Spannungsverstärker mit dem Arduino ADC verbunden. Der Verstärker ist auf einem KT3102-Transistor aufgebaut, der viele fremde Analoga enthält.

Es gibt zwei Schaltflächen zum Auswählen von Modi in den Farben Musik, Farbe und Muster. Die Farbtaste schaltet die Farbschemata um, es gibt nur drei, und die Paterntaste schaltet die dynamischen Modi der Farbmusik um, es gibt nur acht.

Zur Einstellung der Empfindlichkeit und Helligkeit ist ein Param-Potentiometer eingebaut, bei dem es sich um einen variablen Widerstand mit einem variablen Widerstandswert von 0 bis 10 kOhm handelt. Es ist auch mit dem ADC verbunden und abhängig von seiner Position erfolgt eine Software-Verarbeitung der Parameter. Sie können den Code ändern und einen Encoder anstelle eines Potentiometers installieren, dies wird jedoch bereits in einem anderen Projekt implementiert.

In den Einstellungen können Sie auch die Anzahl der im Band verwendeten LEDs 60, 120 oder 180 auswählen und das Frequenzfilter auf 8 Frequenzbereiche einstellen. Hierzu wird ein Software-Frequenzfilter verwendet, das auf dem schnellen Fourier-Transformationsalgorithmus basiert.

Der LED-Streifen basiert auf vollfarbigen, ansteuerbaren LEDs der Serie ws2812b. Für die Dichte des Bandes habe ich 60 LEDs pro 1 Meter gewählt. Meiner Meinung nach ist dies das optimale Verhältnis für viele Aufgaben. Die Leistung von LED-Streifen sollte ernst genommen werden, da sie maximal 3,6 A pro Meter verbraucht. Natürlich ist die Wahrscheinlichkeit eines solchen Szenarios, dass die Farbmusik alle LEDs in Weiß einschaltet und immer noch mit voller Leistung ist, Null. Trotzdem ist es besser, sofort eine gute Stromversorgung zu bekommen. Mindestens 5 Volt und 5 Ampere.

Farbmusikschema.
Bild

Das Schema hat nichts Besonderes zu kommentieren. Es ist nur erforderlich, den Mittelpunkt des Verstärkers am KT3102-Transistor einzustellen. Die Einstellung reduziert sich auf die Auswahl eines Bias-Widerstandes von 200 kOhm oder eines Lastwiderstandes von 1 kOhm, Sie müssen die halbe Versorgungsspannung am Transistorkollektor oder Eingang A0 erreichen. Der Transistor kann durch ein beliebiges npn-Analog ersetzt werden.

Es ist besser, ein lineares Potentiometer mit einem Widerstand von 10 bis 50 kOhm zu verwenden.

Wenn Sie den Arduino pro Mini-Controller in Ihrem Projekt verwenden, löten Sie sofort den 0,1 μF Keramikkondensator auf den 20. Pin (ARef) des ATmega328-Mikrocontrollers. Wenn Sie Arduino Nano verwenden, müssen Sie den Kondensator nicht löten, er ist bereits auf dieser Platine gelötet.

Hauptkomponenten

Arduino Pro Mini
LED-Streifenlicht auf WS2812B
Mikrofon mit Verstärker
20 kΩ Potentiometer
5V, 5A Netzteil

Skizze für Arduino

Ich habe in meinem Projekt den Lumazoid-Farbmusikcode mit geringfügigen Änderungen verwendet. Die Originalskizze kann von github heruntergeladen werden .

Sie müssen auch die zusätzlichen Bibliotheken NeoPixel.h und ffft.h zum im Projekt verwendeten Bibliotheksordner hinzufügen

Wenn Sie die Parameter Ihres LED-Streifens nicht in der Skizze registriert haben, können Sie diese ändern. Drücken Sie dazu die Mustertaste, ohne sie loszulassen, und schalten Sie das Gerät ein. Wenn Sie das Potentiometer drehen, müssen Sie die Dichte des verwendeten LED-Streifens entsprechend den rot leuchtenden LEDs auswählen: Die erste ist 60, die zweite ist 120 oder die dritte ist 180 LEDs. Drücken Sie die Mustertaste erneut, um die Parameter im EEPROM zu speichern.

Halten Sie zum Anpassen der Helligkeit die Farbtaste gedrückt und schalten Sie das Gerät ein. Standardmäßig sind in der Skizze 8 LEDs registriert, die in Primärfarben leuchten. Mit dem Param-Potentiometer können Sie die Helligkeit ändern. Drücken Sie die Farbtaste erneut, um die Parameter im EEPROM zu speichern.

Das Farbschema ist besser, das 3. zu wählen, da es das bunteste ist. In diesem Modus hat jede Farbe einen eigenen Frequenzbereich. In nur 8 Frequenzbereichen liste ich ihre Farben vom niedrigsten bis zum höchsten auf: Rot, Orange, Gelb, Grün, Cyan, Blau, Violett, Weiß.

Wenn Sie die Farb - und Mustertasten gedrückt halten und das Param - Potentiometer drehen, können Sie den Frequenzbereich einschränken, indem Sie den High - Medium - Bereich entfernen und so weiter bis zu den niedrigsten Frequenzen (rote LED). Wenn Sie beispielsweise möchten, dass die Farbmusik nur auf niedrige Töne reagiert, reicht es aus, nur den niedrigen Frequenzbereich zu belassen.

Video zur Demonstration der Möglichkeiten von Farbmusik.

Bitten Sie mich sofort um Entschuldigung für die Qualität des Videos. Ich habe es mit einem billigen Smartphone aufgenommen.


PS


Bevor ich das Mikrofonverbindungsdiagramm vereinfachen möchte, verwende ich max9814 ohne zusätzliche Umreifung. Das Vorhandensein von AGC im MAX9814 ermöglicht es der Farbmusik, ohne Überlastung bei verschiedenen Lautstärkepegeln zu arbeiten.

Ich hoffe, ich habe nichts verpasst. Bei Fragen stehe ich Ihnen gerne zur Verfügung.

Source: https://habr.com/ru/post/de481492/


All Articles