Sisällysluettelo:

Älypuhelimen ohjaamat Bluetooth -merkkivalot (Live Music Sync): 7 vaihetta
Älypuhelimen ohjaamat Bluetooth -merkkivalot (Live Music Sync): 7 vaihetta

Video: Älypuhelimen ohjaamat Bluetooth -merkkivalot (Live Music Sync): 7 vaihetta

Video: Älypuhelimen ohjaamat Bluetooth -merkkivalot (Live Music Sync): 7 vaihetta
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Marraskuu
Anonim
Image
Image
Materiaalien hankinta
Materiaalien hankinta

Olen aina rakastanut rakennustöitä, kun huomasin, että uudessa college -asuntolassani oli kauhea valaistus, päätin piristää sitä hieman.

*** VAROITUS *** Jos rakennat tämän projektin samassa mittakaavassa kuin minun asetukset, työskentelet kohtuullisella määrällä sähköä. OLE TURVALLINEN, käytä tervettä järkeä, ja jos et ole varma, KYSY! Älä ota riskiä polttaa kotiasi.

Vaihe 1: Materiaalien hankinta

Materiaalien hankinta
Materiaalien hankinta
Materiaalien hankinta
Materiaalien hankinta

Tätä projektia varten tarvitset:

  1. Osoitetut WS2812B LED -nauhat. 5V on ylivoimaisesti yleisin tyyppi ja erittäin edullinen tässä projektissa. Tämä projekti on suunniteltu RGB -LEDeille, ei RGBW: lle. Suosittelen vahvasti Adafruitin NeoPixeleitä. (~ 25 dollaria 60 LEDiltä)
  2. CurieNano (edelleen myyty), Arduino 101 (lopetettu, mutta käyttämäni) tai toinen mikro-ohjain, joka voi käyttää BLE: tä. (~ 35 dollaria)
  3. Älypuhelin (sekä Apple että Android toimivat)
  4. Virtalähde. Useimmat markkinoilla olevat osoitteet ovat 5V. Tarvittava ampeeri riippuu kokoonpanostasi*. (~ 10-50 dollaria asetuksista riippuen)
  5. Johdotus ** (saatat tarvita myös asianmukaiset 3- tai 2-nastaiset JST-liittimet ja Arduino-nastat) (~ $ 20-30)
  6. 2.1x5.5mm tynnyrin liittimet, löydät ne täältä. (~ 5 dollaria)
  7. Pieni ristipääruuvimeisseli
  8. Juotosrauta ja juote (~ 20 dollaria)
  9. Kaksipuolinen kiinnitysteippi (leveys 1/4 tuumaa). Käytän tätä. (~ 10 dollaria)
  1. (Suositus) Mikrofoni musiikin synkronointia varten. (Jotta sinulla olisi toimiva musiikin synkronointi, sinulla on oltava sellainen) Löydät sen täältä. (~ 7 dollaria)
  2. (Valinnainen) Arduinon tapaus, kuten tämä. (~ 10 dollaria)
  3. (Valinnainen) vähintään 10 μF: n kondensaattori (Tämä suojaa jännitepiikeiltä, kun käynnistät virtalähteesi ensimmäisen kerran. Huomaa, että joissakin suuremmissa, mieluummissa virtalähteissä voi olla jo sisäänrakennettu suoja.) (~ 5 dollaria)

Suosittelen, että pidät kiinni tämän luettelon linkitetyistä materiaaleista, koska olen käyttänyt niitä suurimman osan päivästä joka päivä kuukausia ilman virheitä- etenkin LED-valoja. Muuten saatat kohdata odottamattomia hikoja tai havaita, että sinulla ei ole tiettyjä materiaaleja tai työkaluja.

* Erittäin pienille nauhoille (~ 30 pikseliä tai vähemmän) tai Arduinolla on tarpeeksi virtaa näiden suorittamiseen, etkä tarvitse virtalähdettä. (TÄMÄ EI OLE SUOSITELTU TÄTÄ OPASTA varten. Pieniä, osoitettavia LED -asetuksia on monia oppaita, jotka vastaavat tarkemmin tilannettasi.)

Suurin osa teistä kuitenkin todennäköisesti tarvitsee virtalähteen. Laskelma on (Amperage) = 0,075*(pikselimäärä). Tässä on sisäänrakennettu turvamarginaali (täydellä teholla virtalähteesi toimii ~ 75%: lla kapasiteetista. Tämä pitää virtalähteen käynnissä viileänä ja siten tasaisesti pitkiä aikoja). Jos se laskee merkittävästi tämän alle, on olemassa ylikuumenemisen ja jopa tulipalon vaara. Jotkin virtalähteet edellyttävät myös oman verkkopistokkeen liittämistä. Näytöille, joissa käytetään useita täysi led -kelaa, suosittelen voimakkaasti ruiskutusta. Tästä puhutaan seuraavassa osassa.

** Koko johto oikein! TURVALLISUUS ENSIN muutaman dollarin ylimääräinen kulutus saattaa pelastaa kotisi.

(Jos olet utelias, käytän kahta 5 V: n virtalähdettä, joissa molemmissa on kaksi 30 A: n lähtöä ja 12 gaugen kaiutinjohtoa. Näin voin pistää riittävästi virtaa neljään kohtaan LED -nauhaani pitkin. Käytän ~ 21 metriä ja tiheys 60 LEDiä /metri.)

Vaihe 2: Virta

Virta
Virta
Virta
Virta
Virta
Virta
Virta
Virta

"lastaus =" laiska"

Image
Image
Tilat ja viritys
Tilat ja viritys
Tilat ja viritys
Tilat ja viritys
Tilat ja viritys
Tilat ja viritys

On kaksi tilaa, jotka pyytävät pikselimäärän aloituspisteissä: tila 2 (väripyyhintä) ja tila 12 (musiikin synkronointi). Jos sinulla on monia LED -valoja, sen massiivinen kipu laskee mihin pikseliin haluat aloittaa, joten olen rakentanut työkalun. BLYNK -sovelluksesi tilavalikon viimeisestä kohdasta löydät tilan nimeltä "Pixel Finder". Jotta voit käyttää tätä, sinun on todennäköisesti muokattava widget -asetuksiasi.

  • Varmista ensin, että olet muokkaustilassa
  • Valitse liukusäädin
  • Muuta kirkkausarvoja niin, että etsimäsi pikselin numero on annetun kirkkausalueen sisällä.

Kun käytät tätä Pixel Finder -tilaa, kirkkausarvon pikseliluku syttyy vihreänä. Tällä tavalla voit selata nopeasti haluttuun paikkaan ja lukea puhelimen pikselinumeron

Tämä näkyy kuvissa [5 ja 6] ja [7 ja 8]. (Saatat huomata, että tässä kuvakaappauksessa käytän värin liukusäätimiä zeRGBran sijaan). Huomaa myös, että ensimmäisen pikselin indeksi on 0 eikä 1.

Tämän pitäisi auttaa sinua asettamaan kuviot haluamaasi paikkaan.

Vielä yksi asia, joka minun on mainittava, on, että "Kirkkaus" Comet -tilassa (tila 10) ja Music Sync (tila 12) säätävät "hännän" pituutta. Näin koodin pitäisi toimia, koska "kirkkaus" ei todellakaan ole järkevää näissä tiloissa.

Vaihe 7: Hurraa! Olet valmis! (Lue lisätietoja koodista)

LED -valojen käyttäminen:

  • Ole Arduinosi kantaman sisällä
  • Napauta BLE -kuvaketta
  • Etsi laitteesi (vastaa deviceName ) ja valitse se

Voit nyt käyttää kaukosäädintä.

Mene nauttimaan kaikesta kovasta työstäsi!

***************************** Lisäasetukset (Tietoja koodista) *************** ******************

Yritin saada koodin hyvin kommentoiduksi, sitä ei luultavasti ole optimoitu millään tavalla, mutta tiedän, että se käyttää 1200+ valoni riittävän nopeasti. Sisällysluettelossa on koodi eroteltu rivinumerolla.

Koodin osat, jotka sisältävät tilat ja käyttöliittymän, ovat melko erotettavissa, teknisesti voit luopua bluetoothista ja käyttää kiinteää kytkentätaulua tai yksinkertaista ajastinta, joka käy läpi kaikki tilat. Sinun on todella täytettävä cmdArr -taulukko antaaksesi ohjeita.

  • Index 0 tallentaa tietoja nauhan kytkemisestä päälle/pois,
  • Hakemisto 1 tallentaa tilan numeron valikosta
  • Indikaatiot 2, 3 ja 4 tallentavat värinvalitsimen R-, G- ja B -arvot.
  • Indeksi 5 tallentaa kirkkauden prosentit
  • Muut merkit ovat tällä hetkellä käyttämättömiä

Huomaatko monet koodissa olevat rivit, joissa lukee "SetPixelColorAdj (…"), vaikka toiminto on vain "setPixelColor (…"). Tämä johtuu siitä, että tämä on hieman jäljellä oleva koodi, jota käytetään LED -nauhan osien kartoittamiseen. Jos esimerkiksi käytät yhtä nauhaa kahden silmukan tekemiseen, olisi tuskallista käsitellä kuvioita tauolla, kunnes silmukka sulautuu takaisin itseensä. Näin voit liittää keinotekoisesti LED -nauhan sisäisen ominaisuuden loppuun ja myös liitä pääsilmukka takaisin yhteen niin, että koodin sisällä on intuitiivista työskennellä.

Annan myös selityksen joidenkin monimutkaisempien tilojen toiminnasta. Jotkut niistä (Rainbow, Color Wipe ja Fade [1, 2, 3]) ovat jo NeoPixel -kirjastossa esimerkkikoodina.

  • Lava, katos, valtameri [4, 5, 6] - Nämä tilat käyttävät ohjauspisteitä, kuten aiemmin mainittiin, jokainen ohjauspiste saa satunnaisen värin sille määritetyllä alueella. Lava on enimmäkseen punainen, katos on enimmäkseen vihreä ja valtameri on enimmäkseen sininen. Häivytyskuvio [3] tarjoaa jo suuren lineaarisen häivytysalgoritmin. Tämän tarkoituksena on haalistua yhden ohjauspisteen väristä toiseen käyttämällä välissä olevia pikseleitä, mikä luo tasaisen vaihtelun. Kolme häivytysmatriisia tallentavat ohjauspisteiden aikakatkaisun vaiheet (alku-, siirtymä- ja lopputilat). Kun opaspisteet haalistuvat ajassa, myös niiden lähellä olevat pikselit päivittävät myös värit. Kun aikaväli on päättynyt, juuri saavutetusta päätepisteestä tulee uusi aloituspiste. Näin kuvio pysyy tasaisena ajassa.
  • Väriaalto [7] - Tämä on samanlainen kuin edelliset tilat, mutta ohjauspisteiden värit valitaan eri tavalla. Perusvärille annetaan poikkeama, joka haalistuu väripyörän ympärille ajan myötä.
  • Fireflies [8] - 2D -matriisi tallentaa 90 valitun tulikärpäsen sijainnin ja suunnan. Se päättää jokaisessa vaiheessa, liikkuuko tulikärpäs vasemmalle, oikealle vai ei ollenkaan. Niiden yleinen kirkkaus seuraa häipymis-, häipymisjaksoa.
  • Konfetti [9]- Et voi käyttää Firefly-osia täällä uudelleen, vaikka ne näyttävätkin samanlaisilta- tämä johtuu siitä, että haluat yleisen tasaisen kirkkauden nähdäksesi parhaiten värinmuutoksen. Idea ei kuitenkaan ole kovin erilainen. Sain tasaisen valaistuksen määrittämällä 1/3 kaikista konfettikimalleista kolmelle jaksolliselle sinitoiminnolle, jotka on erotettu 1/3 jakson jaksosta.
  • Komeetta [10] - Hyvin samanlainen kuin Adafruitin skanneri, ero on siinä, että suunta luodaan nyt satunnaisesti joka kerta eikä muutu. häntä. Jokaisen päivityksen himmennyksen kutsu luo kuvion häipymisen tai "hännän".
  • Music Sync [12]- Kaksi parametria lasketaan äänenvoimakkuuden perusteella (jännite A0: sta): väri ja pituus. Musiikin synkronointi haalistuu sitten keskiväristä laskettuun väriin ja haalistuu samanaikaisesti mustaksi annetulla pituudella. Keskiväri haalistuu tasaisesti väripyörän ympärille, joten saat sekä näyttäviä tehosteita että sileyttä, joten se ei ole haitallista.

Kuvaluotot

cdn.shopify.com/s/files/1/0176/3274/produc…

store-cdn.arduino.cc/usa/catalog/product/c…

cdn.mos.cms.futurecdn.net/aSDvUGkMEbyuB9qo…

images-na.ssl-images-amazon.com/images/I/6…

www.amazon.com/Speaker-GearIT-Meters-Theat…

www.powerstream.com/z/adapter-2-1-tocrrew…

www.amazon.com/Hobbico-HCAR0776-Soldering-…

images-na.ssl-images-amazon.com/images/I/7…

cdn-shop.adafruit.com/970x728/1063-03.jpg

cdn-learn.adafruit.com/assets/assets/000/0…

www.adafruit.com/product/2561

www.adafruit.com/product/2964?length=1

cdn.sparkfun.com//assets/parts/4/6/8/4/102…

www.holidaycoro.com/v/vspfiles/assets/image…

www.circuitspecialists.eu/5-volt-enclosed-s…

d3vs3fai4o12t3.cloudfront.net/media/catalo…

Suositeltava: