Obsah:

Přenosná párty světla: 12 kroků (s obrázky)
Přenosná párty světla: 12 kroků (s obrázky)

Video: Přenosná párty světla: 12 kroků (s obrázky)

Video: Přenosná párty světla: 12 kroků (s obrázky)
Video: Vražda rodiny Richardson: 12letá dívka zabila svoji rodinu, aby mohla být s přítelem (23) 2024, Listopad
Anonim
Image
Image
Idea
Idea

Projekty Tinkercad »

Můžete přinést světlo na večírek a udělat ho zábavnějším?

To byla otázka. A odpověď je ANO (samozřejmě).

Tento návod se týká výroby přenosného zařízení, které poslouchá hudbu a vytváří vizualizaci hudby ze soustředných prstenců LED diod Neopixel.

Byl proveden pokus, aby zařízení „tančilo“, tj. Aby se pohybovalo v rytmu hudby, ale detekce rytmu se ukázala být komplikovanějším úkolem, než se zdá (žádná slovní hříčka není určena), takže „tanec“je trochu trapný, ale pořád tam je.

Zařízení má Bluetooth a bude reagovat na textové příkazy. Neměl jsem čas napsat aplikaci pro ovládání Party Lights (Android nebo iOS). Pokud úkol splníte - dejte mi prosím vědět !!!

Pokud se vám tento návod líbí, hlasujte pro něj v soutěži Make It Glow!

Zásoby

K výrobě Party Lights budete potřebovat:

  • STM32F103RCBT6 Leaflabs Leaf Maple Mini USB ARM Cortex -M3 modul pro Arduino (odkaz zde) - mozek zařízení. Tato relativně levná zařízení jsou tak výkonná, že není jasné, proč byste se někdy vrátili k Arduinu.
  • MSGEQ7 pásmový grafický ekvalizér IC DIP-8 MSGEQ7 (odkaz zde)
  • Modul Bluetooth HC-05 nebo HC-06 (odkaz zde)
  • Mikrofon Adafruit MAX9814 (odkaz zde)
  • Standardní servomotor (odkaz zde) chcete, aby vaše zařízení „tančilo“
  • CJMCU 61 Bit WS2812 5050 RGB LED Driver Development Board (odkaz zde)
  • Kapacitní nastavitelný modul samosvorného/bezzámkového spínače modulu dotykového klíče TTP223 (odkaz zde)
  • Extrémně kompaktní duální USB výstupy 5000 mah Super tenká power banka (odkaz zde)

  • Rezistory, kondenzátory, dráty, lepidlo, šrouby, prototypovací desky atd. Atd.

Krok 1: Idea

Idea
Idea

Cílem je mít přenosné zařízení, které by bylo možné umístit blízko zdroje hudby a které by vytvářelo barevné vizualizace hudby. Měli byste být schopni ovládat chování zařízení pomocí tlačítek (dotykové) a Bluetooth.

V současné době má Party Lights implementováno 7 vizualizací (dejte mi vědět, pokud máte další nápady!):

  1. Soustředné barevné kruhy
  2. Maltézský kříž
  3. Pulzující světla
  4. Krb (můj osobní favorit)
  5. Svítící světla
  6. Světlé stromy
  7. Boční segmenty

Ve výchozím nastavení zařízení bude procházet vizualizacemi každou minutu. Uživatel se však může rozhodnout zůstat u jedné vizualizace a/nebo ji ručně procházet.

Vizualizace, které otáčejí jejich paletu barev, by také mohly být „zmrazeny“, pokud se uživateli líbí konkrétní kombinace barev.

A jako několik dalších ovládacích prvků může uživatel změnit citlivost mikrofonu a povolit/zakázat režim „tance“servomotoru.

Krok 2: Schématické a zvukové zpracování

Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování
Schématické a zvukové zpracování

Fritzující schematický soubor je součástí balíčku na Githubu v podsložce „soubory“.

Čip MSEQ7 v zásadě zpracovává zvuk a rozděluje zvukový signál do 7 pásem: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2,5 kHz, 6,25 kHz a 16 kHz

Mikrokontrolér používá těchto 7 pásem k vytváření různých vizualizací, v zásadě mapuje příslušné amplitudy pásma do intenzity světla LED a barevných kombinací.

Zdrojem zvuku je mikrofon se 3 úrovněmi ovládání zesílení. Nastavení zisku můžete procházet pomocí jednoho z tlačítek v závislosti na tom, jak daleko/hlasitě je zdroj zvuku.

Mikrokontrolér se také pokouší provést detekci „beatu“v pásmu „Hz“63 Hz. Stále pracuji na spolehlivém způsobu detekce a udržování zarovnání rytmu.

Použití „dotykových“tlačítek byl experiment. Myslím, že fungují docela dobře, nicméně nedostatek zpětné vazby od tisku je poněkud matoucí.

Krok 3: Kolečko LED

LED kolo
LED kolo
LED kolo
LED kolo
LED kolo
LED kolo

Jádrem vizualizace je 61 LED kolečko.

Vezměte prosím na vědomí, že část je dodávána jako jednotlivé prsteny, které budete muset dát dohromady. Spíše jsem používal měděné dráty pro elektrické vedení (které také pěkně drží prstence pohromadě) a tenké signální vodiče.

LED diody jsou očíslovány od 0 do 60 počínaje od spodní vnější LED diody a jdou ve směru hodinových ručiček dovnitř. Středová LED má číslo 60.

Každá vizualizace spoléhá na dvourozměrná datová pole, která mapují každou LED do konkrétní polohy pro cílový segment vizualizace.

Například pro soustředné kruhy existuje 5 segmentů:

  • Vnější kruh, LED diody 0 - 23, 24 LED dlouhé
  • Druhý vnější kruh, LED 24 - 39, 16 LED dlouhé
  • Třetí kruh (uprostřed), LED 40 - 51, 12 LED dlouhé
  • Druhý vnitřní kruh, LED 52 - 59, 8 LED dlouhé
  • Uvnitř LED, LED 60, 1 LED dlouhá

Vizualizace mapuje 5 ze 7 zvukových kanálů a postupně rozsvítí diody LED podle jejich polohy v kruhovém pásmu úměrně úrovni zvuku v pásmu.

Jiné vizualizace používají různé datové struktury a formáty, ale myšlenkou je vždy mít vizualizace založené na datových polích, ne tolik na kódu. Tímto způsobem lze vizualizace upravit na různé tvary (více nebo méně LED diod, více pásem EQ) bez změny kódu, pouze hodnot v datových polích.

Například takto vypadá datová struktura pro vizualizaci 1 v náčrtu:

// Vizualizace 1 a 3 - celých 5 kruhů kontrastní bajt TOTAL_LAYERS1 = 5; konstantní LAYERS1 [TOTAL_LAYERS1] [25] = {// 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 {24, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}, {16, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39}, {12, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51}, {8, 52, 53, 54, 55, 56, 57, 58, 59}, {1, 60}};

Krok 4: Vizualizace

Vizualizace
Vizualizace
Vizualizace
Vizualizace
Vizualizace
Vizualizace
Vizualizace
Vizualizace

Zatím existuje 7 vizualizací a úvodní animace:

Spouštěcí animace

Když je zařízení zapnuto, zobrazí se imitace ohňostroje. Mělo se jednat o testovací sekvenci LED a serva, ale později se vyvinul do animované verze takového testu

Soustředné barevné kruhy

Světla obcházejí displej soustřednými kruhy úměrnými amplitudě příslušného pásma ekv. Náhodné přepínání mezi hodinovým a proti směru hodinových ručiček a pomalé otáčení barev na 256 barevném kolečku

Maltézský kříž

Jedno pásmo je středová LED. Dalším pásmem jsou svislé a vodorovné čáry LED diod a zbývající segmenty představují každý pásmo EQ. Všechny segmenty otáčejí barvy ve 128 offsetu, aby zůstaly kontrastní.

Pulzující světla

Každý kruh rozsvítí všechny LED diody současně pro vyhrazené eq pásmo, zatímco pomalu rotuje barvy s mírným posunem. Pásma ekvalizéru se postupně přesouvají z jednoho kruhu do druhého a vytvářejí postup směrem ven.

Krb

Pásy jsou půlkruhy osvětlené zespodu nahoru, počínaje jasně červenou a žlutou cestou nahoru simulující hořící oheň v krbu. Občas jasně bílá „jiskra“náhodně vystřelí nahoru. Neexistuje žádné střídání barev

Svítící světla

Každý soustředný kruh je samostatné pásmo EQ. Přední LED diody jsou ty na svislé čáře pod středovou LED. Jakmile se LED dioda rozsvítí úměrně k amplitudě pásma, začne „běhat“kolem příslušného kruhu a pomalu klesá intenzita. Jsou podporovány rotace ve směru i proti směru hodinových ručiček s náhodným přepínáním.

Světlé stromy

Segmenty jsou osvětleny v přímce od spodní LED nahoru a poté do stran v soustředných půlkruzích napodobujících palmy. Rotace barev.

Boční segmenty

Toto je verze předchozího maltézského kříže, kde byly použity pouze 2 diagonální segmenty. Má připomínat ikonu zvukových vln.

Krok 5: Dotykové ovládací prvky tlačítek

Ovládání dotykovými tlačítky
Ovládání dotykovými tlačítky

K dispozici jsou 4 dotyková tlačítka:

  1. Procházejte vizualizacemi a udržujte aktuální, dokud nebude vybrána další (ve výchozím nastavení cykly vizualizací každých 30 sekund)
  2. „Zmrazit“/ „Rozmrazit“aktuální barevné schéma - pokud se vám líbí konkrétní barevná kombinace, můžete ji zmrazit - rotace barev je deaktivována a vizualizace bude pokračovat pouze pomocí této palety barev
  3. Upravte citlivost mikrofonu
  4. Zapněte / vypněte „taneční režim“

V tanečním režimu se zařízení pokusí detekovat „rytmus“právě přehrávané hudby a podle rytmu otočit hlavu. Abych byl upřímný, „tancování“je zatím spíše nešikovné než krásné.

Krok 6: Detekce rytmu a „tancování“serva

Detekce úderů a servo
Detekce úderů a servo

Zařízení se neustále pokouší detekovat „rytmus“aktuální melodie jako vzdálenost mezi po sobě jdoucími špičkami pásma 63 Hz. Jakmile je detekován (a pouze pokud je taneční režim ZAPNUTÝ), zařízení aktivuje svůj servomotor a náhodně se podle rytmu otočí doleva nebo doprava.

Jakékoli chytré nápady, jak zvýšit spolehlivost, jsou vítány!

Skica „Music_Test_LED“produkuje 7 pásem EQ způsobem vhodným pro vykreslování pomocí Arduino IDE.

Krok 7: 3D tvary

3D tvary
3D tvary
3D tvary
3D tvary
3D tvary
3D tvary

Celá sestava Party Lights byla navržena od nuly pomocí aplikace Autodesk TinkerCAD.

Zde je umístěn původní design. Složka "soubory/3D" na github.com obsahuje modely STL.

Tento design ukazuje, jak zařízení vypadá sestavené.

Všechny součásti byly vytištěny a poté sestaveny/slepeny dohromady.

V „kopuli“je umístěn mikrokontrolér, deska Bluetooth a mikrofon. Mikrokontrolér je umístěn na desce 40 mm x 60 mm a je podporován určenými kolejnicemi.

Servo je umístěno v „noze“kopule, zatímco tlačítka jsou umístěna v základně.

Prostor pro baterie je vytištěn speciálně pro typ baterie uvedený v části Spotřební materiál. Pokud se rozhodnete použít jinou baterii, přihrádka bude muset být odpovídajícím způsobem přepracována.

Krok 8: Napájení

Zdroj napájení
Zdroj napájení
Zdroj napájení
Zdroj napájení

Ultrakompaktní duální výstupy USB s kapacitou 5000 mah Zdá se, že super tenká napájecí banka poskytuje dostatek energie pro hodiny provozu.

Prostor pro baterie je navržen tak, aby se oddělil od zbytku zařízení a mohl být nahrazen tím, který je určen pro jiný typ baterie.

Zástrčka USB byla umístěna a nalepena za tepla, aby se připojila baterie, když se zasune.

Krok 9: Ovládání Bluetooth

Ovládání Bluetooth
Ovládání Bluetooth

Je přidán modul HC-05, který poskytuje způsob bezdrátového ovládání zařízení.

Když je zapnuto, zařízení vytvoří připojení Bluetooth s názvem „LEDDANCE“, se kterým můžete telefon spárovat.

V ideálním případě by měla existovat aplikace, která umožňuje ovládání PartyLights (výběr barevné palety, simulace stisknutí tlačítek atd.). Žádný jsem však zatím nenapsal.

Pokud máte zájem pomoci s psaním aplikace pro Android nebo iOS pro Party Lights, dejte mi prosím vědět!

K ovládání zařízení můžete v současné době používat aplikaci Bluetooth Terminal a odesílat následující příkazy:

  • LEDDBUTT - kde je '1', '2', '3' nebo '4' simuluje stisknutí příslušného tlačítka. Př.: LEDDBUTT1
  • LEDDCOLRc - kde c je číslo od 0 do 255 - pozice požadované barvy na barevném kolečku. Zařízení se přepne na zadanou barvu LED.
  • LEDDSTAT - vrací 3místné číslo skládající se pouze z '0 a' 1:

    • první pozice: '0' - barvy se neotáčejí, '1' - barvy se otáčejí
    • druhá pozice: '0' - taneční režim je vypnutý, '1' - taneční režim je zapnutý
    • třetí pozice: '0' - mikrofon má normální zisk, '1' - mikrofon má vysoký zisk

Krok 10: Ovládejte aplikaci založenou na Blynku

Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku
Ovládací aplikace založená na Blynku

Blynk (blynk.io) je hardwarově agnostická platforma IoT. Použil jsem Blynk v mém IoT automatickém zavlažovacím systému rostlin podle pokynů a byl ohromen snadností a robustností platformy.

Blynk podporuje připojení k okrajovým zařízením přes Bluetooth - přesně to, co pro PartyLights potřebujeme.

Pokud jste to ještě neudělali, stáhněte si aplikaci Blynk, zaregistrujte se a znovu vytvořte aplikaci Blynk PartyLights pomocí snímků obrazovky připojených k tomuto kroku. Ujistěte se prosím, že přiřazení virtuálních pinů je stejné jako na screenshotech, jinak nebudou tlačítka v aplikaci fungovat tak, jak měla.

Soubor „blynk_settings.h“obsahuje mé osobní Blynk UID. Když vytvoříte svůj projekt, bude mu přiřazen nový, který budete používat.

Nahrajte skicu PartyLightsBlynk.ino, spusťte aplikaci. Spárujte se zařízením Bluetooth a užijte si párty.

Krok 11: Skici a knihovny

Skici a knihovny
Skici a knihovny

Hlavní skica a podpůrné soubory jsou umístěny na Github.com zde.

V náčrtu Party Lights byly použity následující knihovny:

  • TaskScheduler - kooperativní multitasking - zde (mnou vyvinutý)
  • AverageFilter - průměrný filtr podle šablony - zde (mnou vyvinutý)
  • Servo - Servo control - je standardní knihovna Arduino
  • Ovládání WS2812B -NEOPixel - je součástí balíčku STM32

Tato stránka Wiki vysvětluje, jak používat desky STM32 s Arduino IDE.

Krok 12: Budoucí vylepšení

Budoucí vylepšení
Budoucí vylepšení

V tomto designu by bylo možné vylepšit několik věcí, které byste mohli zvážit, pokud se do tohoto projektu pustíte:

  • Místo desky Maple Mini použijte ESP32. ESP32 má 2 CPU, Bluetooth a WiFi stacky a může pracovat na frekvencích 60 MHz, 120 MHz a dokonce 240 MHz.
  • Menší design - výsledné zařízení je velké. Mohlo by to být kompaktnější (zvláště pokud upustíte od tanečního nápadu a souvisejícího serva)
  • Detekci beatů lze nekonečně vylepšovat. To, co je pro nás lidi přirozené, se zdá být pro počítač obtížným úkolem
  • Dalo by se vymyslet a implementovat mnohem více vizualizací.
  • A samozřejmě by mohla být napsána aplikace pro bezdrátové ovládání zařízení pomocí skvělého uživatelského rozhraní.

Doporučuje: