Kinokontrol ng Smartphone na Mga Bluetooth na Bluetooth (na may Live Music Sync): 7 Mga Hakbang
Kinokontrol ng Smartphone na Mga Bluetooth na Bluetooth (na may Live Music Sync): 7 Mga Hakbang
Anonim
Image
Image
Pagkuha ng Mga Kagamitan
Pagkuha ng Mga Kagamitan

Palagi kong gustung-gusto ang pagbuo ng mga bagay, matapos kong malaman na ang aking bagong dorm sa kolehiyo ay may kasindak-sindak na ilaw, nagpasya akong pagandahin ito nang kaunti.

*** BABALA *** Kung itatayo mo ang proyektong ito sa parehong sukat ng aking pag-set up, gagana ka sa isang disenteng dami ng lakas na elektrisidad. MAGING SAFE, gumamit ng bait, at kung hindi ka sigurado, TANONG! Huwag ipagsapalaran na masunog ang iyong bahay.

Hakbang 1: Pagkuha ng Mga Materyales

Pagkuha ng Mga Kagamitan
Pagkuha ng Mga Kagamitan
Pagkuha ng Mga Kagamitan
Pagkuha ng Mga Kagamitan

Para sa proyektong ito kakailanganin mo:

  1. Maaaring matugunan ang (mga) LED strip ng WS2812B. Ang 5V ay ang pinaka-karaniwang uri at lubos na ginusto sa proyektong ito. Ang proyektong ito ay dinisenyo para sa RGB LEDs, hindi RGBW. Masidhi kong inirerekumenda ang NeoPixels ng Adafruit. (~ $ 25 bawat 60 LEDs)
  2. Isang CurieNano (nabili pa rin), isang Arduino 101 (hindi na ipinagpatuloy ngunit ang ginagamit ko), o ibang micro-controller na maaaring ma-access ang BLE. (~ $ 35)
  3. Isang smartphone (parehong gumagana ang Apple at Android)
  4. Isang supply ng kuryente. Karamihan sa mga maaaring addressing LEDs sa merkado ay 5V. Ang amperage na kinakailangan ay nakasalalay sa laki ng iyong pag-set up *. (~ $ 10-50 depende sa iyong pag-set up)
  5. Mga kable ** (maaaring kailanganin mo rin ang naaangkop na 3-pin o 2-pin na konektor ng JST at mga pin ng Arduino) (~ $ 20-30)
  6. 2.1x5.5mm barong konektor ng bariles, mahahanap mo ang mga ito dito. (~ $ 5)
  7. Isang maliit na distornilyador ng Phillips
  8. Panghinang na Bakal at Panghinang (~ $ 20)
  9. Dobleng panig na mounting tape (1/4 pulgada ang lapad). Ginagamit ko ito. (~ $ 10)
  1. (Inirekomenda) Isang mikropono para sa pag-sync ng musika. (Upang magkaroon ng gumaganang pag-sync ng musika dapat mayroon kang isa) Maaari kang makahanap ng isa mula sa Adafruit dito. (~ $ 7)
  2. (Opsyonal) Isang kaso ng Arduino, tulad nito. (~ $ 10)
  3. (Opsyonal) isang kapasitor ng hindi bababa sa 10 μF (Pinoprotektahan nito laban sa mga spike ng boltahe kapag unang nagpapaandar sa iyong supply ng kuryente. Tandaan na ang ilan sa mas malaki, fancier, mga power supply ay maaaring naitayo bilang proteksyon.) (~ $ 5)

Masidhi kong inirerekumenda na manatili ka sa mga naka-link na materyales sa listahang ito dahil ginamit ko ang mga ito sa halos buong araw, araw-araw, nang maraming buwan nang walang pagkabigo - lalo na ang mga LED. Kung hindi man, maaari kang magkaroon ng hindi inaasahang mga hiccup o malaman na kulang ka sa ilang partikular na mga materyales o tool.

* Para sa napakaliit na piraso (~ 30 Mga Pixel o mas kaunti) o Arduino ay may sapat na lakas upang patakbuhin ang mga ito at hindi mo kakailanganin ang isang supply ng kuryente. (HINDI ITO AY NANGOMOMOMENDRO PARA SA GABAY NA ITO. Maraming mga tagubilin sa pagtuturo sa pagbuo ng maliit, madaling address na mga pag-setup ng LED, iyon ay magiging mas tiyak sa iyong sitwasyon.)

Karamihan sa iyo, gayunpaman, ay maaaring mangailangan ng isang supply ng kuryente. Ang pagkalkula ay (Amperage) = 0.075 * (Bilang ng mga Pixel). Ito ay kasama ang isang safety margin na nakapaloob (sa buong pagguhit ang iyong supply ng kuryente ay gagana sa ~ 75% ng kapasidad. Mapapanatili nitong cool ang iyong supply ng kuryente at sa gayon ay tuloy-tuloy sa mahabang panahon). Ang pagpunta sa makabuluhang ibaba nito ay nagpapatakbo ng mga panganib ng sobrang pag-init at kahit sunog. Ang ilang mga supply ng kuryente ay mangangailangan ka ring maglakip ng iyong sariling AC wall plug. Para sa mga display na gumagamit ng maraming buong led led, masidhing inirerekumenda ko sa iyo ang power injection. Pag-uusapan ito sa susunod na seksyon.

** Sukatin nang maayos ang iyong kawad! KALIGTASAN UNANG paggastos ng dagdag na ilang dolyar ay maaaring makatipid sa iyong tahanan.

(Kung mausisa ka ay gumagamit ako ng dalawang 5V power supply bawat isa na may dalawang 30A output, at 12 gauge speaker wire. Pinapayagan akong mag-iniksyon ng sapat na lakas sa apat na puntos kasama ang aking LED strip. Gumagamit ako ng ~ 21 metro na may density ng 60 LEDs / metro.)

Hakbang 2: Lakas

Lakas
Lakas
Lakas
Lakas
Lakas
Lakas
Lakas
Lakas

"loading =" tamad"

Image
Image
Mga Mode at Pag-tune
Mga Mode at Pag-tune
Mga Mode at Pag-tune
Mga Mode at Pag-tune
Mga Mode at Pag-tune
Mga Mode at Pag-tune

Mayroong dalawang mga mode na humihiling para sa numero ng pixel sa mga panimulang punto: mode 2 (Kulay Punasan) at mode 12 (Music Sync). Kung mayroon kang maraming mga LED, ito ay isang napakalaking sakit na binibilang sa kung aling eksaktong pixel ang nais mo bilang isang pagsisimula kaya't bumuo ako ng isang tool. Sa huling item ng menu ng mode sa iyong BLYNK app, mahahanap mo ang isang mode na tinatawag na "Pixel Finder". Upang magamit ito maaari mong baguhin ang iyong mga setting ng widget.

  • Siguraduhin muna na nasa edit mode ka
  • Piliin ang slider
  • Palitan ka ng mga halaga ng ilaw upang ang numero ng pixel na iyong hinahanap ay nasa loob ng saklaw ng ilaw na ipinasok.

Kapag ginamit mo ang mode na ito ng Finder ng Pixel, ang bilang ng pixel ng iyong halaga ng liwanag ay lumiliwanag sa Green. Sa ganitong paraan maaari mong mabilis na mag-scroll sa isang nais na lokasyon, at basahin ang numero ng pixel mula sa iyong telepono

Makikita mo ito sa Mga Larawan [5 at 6] at [7 at 8]. (Maaari mong mapansin na sa screenshot na ito ginagamit ko ang Mga Slider ng Kulay sa halip na ang zeRGBra). Tandaan din na ang index ng unang pixel ay 0 hindi 1.

Matutulungan ka nitong i-set up ang iyong mga pattern kung saan mo nais ang mga ito.

Isa pang bagay na dapat kong banggitin ay ang "Liwanag" sa mga mode ng Comet (mode 10) at Music Sync (mode 12) na ayusin ang haba ng "mga buntot". Ito ay kung paano ang code ay dapat na gumana bilang "Liwanag" ay hindi talagang magkaroon ng kahulugan sa mga mode na ito.

Hakbang 7: Hooray! Tapos ka na! (Basahin ang para sa Mga Extra Tungkol sa Code)

Upang magamit ang iyong mga LED:

  • Maging saklaw ng iyong Arduino
  • Tapikin ang icon na BLE
  • Hanapin ang iyong aparato (sagutin para sa deviceName ) at piliin ito

Magagamit mo na ngayon ang iyong remote.

Pumunta sa tamasahin ang lahat ng iyong pagsusumikap!

***** ***** *****

Sinubukan kong gawing maayos ang pagkomento ng code, marahil ay hindi ito na-optimize sa anumang paraan, ngunit alam kong pinapatakbo nito ang aking 1200+ na ilaw nang sapat. Ang talahanayan ng mga nilalaman ay may code na naka-seksyon sa pamamagitan ng numero ng linya.

Ang mga bahagi ng code na naglalaman ng mga mode at interface ng gumagamit ay lubos na mapaghihiwalay, sa teknikal na paraan maaari mong kanal ang bluetooth at gumamit ng isang hard-wired switchboard, o isang simpleng timer na umiikot sa lahat ng mga mode. Kailangan mo lamang punan ang cmdArr array upang magbigay ng mga tagubilin.

  • Ang index 0 ay nag-iimbak ng impormasyon tungkol sa strip na naka-on / off,
  • Iniimbak ng index 1 ang numero ng mode mula sa menu
  • Ipinapahiwatig ng 2, 3, at 4 na mga halagang R, G, at B mula sa tagapili ng kulay ayon sa pagkakabanggit.
  • Ang index 5 ay nag-iimbak ng porsyento ng ningning
  • Ang iba pang mga nagpapahiwatig ay kasalukuyang hindi ginagamit

Marami kang napansin sa code maraming mga linya na binasa ang "SetPixelColorAdj (…" sa kabila ng pagpapaandar na simpleng "setPixelColor (…". Ito ay dahil ito ay isang kaunting natitirang code na ginamit upang mapa ang mga bahagi ng LED strip sa paligid. Halimbawa, kung gumagamit ka ng isang strip upang makagawa ng dalawang mga loop, magiging sakit upang tugunan ang mga pattern na may pahinga hanggang sa kung saan ang loop ay sumasama pabalik sa sarili nito. Sa pamamagitan nito, maaari mong artipisyal na paghaluin ang panloob na tampok ng LED strip hanggang sa dulo at i-splice din ang pangunahing loop pabalik upang sa loob ng code, ito ay madaling maunawaan upang gumana.

Magbibigay din ako ng isang paliwanag sa likod kung paano gumagana ang ilan sa mga mas kumplikadong mode. Ang ilan sa kanila (Rainbow, Color Wipe, at Fade [1, 2, 3]) ay nasa NeoPixel Library bilang halimbawa code.

  • Lava, Canopy, Ocean [4, 5, 6] - Ang mga mode na ito ay gumagamit ng mga point-guide tulad ng nabanggit kanina, ang bawat point point ng gabay ay nakakakuha ng isang random na kulay sa loob ng isang larangan na nakatalaga dito. Kadalasang pula ang lava, ang Canopy ay kadalasang berde, at ang Karagatan ay asul. Ang pattern na Fade [3] ay nagbibigay na ng isang mahusay na linear fade algorithm. Ito ay repurposed upang mawala mula sa kulay ng isang gabay na punto sa susunod gamit ang mga pixel sa pagitan, na lumilikha ng isang makinis na pagbabagu-bago. Ang tatlong fade arrays ay nag-iimbak ng mga hakbang sa isang pag-fade ng oras ng mga puntos ng gabay (mga estado ng pagsisimula, paglipat, at pagtatapos). Kapag ang mga puntos ng patnubay ay kumukupas sa oras, ang mga pixel na malapit sa kanila ay ina-update din ang kanilang mga kulay. Kapag nakumpleto ang isang siklo ng oras, ang naabot na endpoint ay nagiging bagong panimulang punto. Sa ganitong paraan ang pattern ay mananatiling makinis sa oras.
  • Kulay Wave [7] - Ito ay katulad ng nakaraang mga mode, ngunit ang mga kulay para sa mga gabay na puntos ay naiiba na pinili. Mayroong paglihis na ibinigay sa isang batayang kulay na kumukupas sa paligid ng kulay ng gulong sa oras.
  • Fireflies [8] - Ang lokasyon ng 2D array ay nag-iimbak ng lokasyon at direksyon para sa 90 napiling mga alitaptap. Nagpapasya ito, sa bawat oras na hakbang, kung ang isang alitaptap ay lilipat sa kaliwa, kanan, o hindi man. Ang kanilang pangkalahatang ningning ay sumusunod sa isang kumukupas, kumukupas na ikot.
  • Confetti [9] - Hindi mo maaaring magamit muli ang mga bahagi mula sa alitaptap dito bagaman mukhang magkatulad ang mga ito - ito ay dahil mas gusto mo ang isang pangkalahatang pare-pareho ang ilaw upang pinakamahusay na makita ang paglilipat ng kulay. Ang ideya gayunpaman ay hindi masyadong magkakaiba. Nakamit ko ang kahit na pag-iilaw sa pamamagitan ng pagtatalaga ng 1/3 ng lahat ng mga confetti sparkle sa 3 co-periodic sine function na pinaghiwalay ng isang shift ng 1/3 ng panahon bawat isa.
  • Comet [10] - Halos katulad ng Scanner ng Adafruit, ang pagkakaiba ay ang direksyon na ngayon ay random na nabuo sa bawat oras at hindi nagbabago, mayroong isang bahagyang pagkakaiba-iba ng kulay habang ang pixel ay gumagalaw sa paligid ng paglikha ng isang mas "sunog" tulad ng epekto sa buntot Ang tawag sa pagdidilim ng bawat pag-update ay ang lumilikha ng pagkupas o ang "buntot" ng pattern.
  • Music Sync [12] - Dalawang mga parameter ang kinakalkula batay sa dami (boltahe mula sa A0): Isang kulay at haba. Pagkatapos, ang pag-sync ng musika ay kumukupas mula sa isang kulay sa gitna hanggang sa kalkuladong kulay, habang sabay na kumukupas sa itim sa ibinigay na haba. Ang kulay ng gitna ay maayos na kumukupas sa paligid ng kulay ng gulong, sa gayon makakakuha ka ng parehong marangya na mga epekto at kinis upang hindi ito nakakainis.

Mga Kredito sa Larawan

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-Meter-Theat…

www.powerstream.com/z/adapter-2-1-to-screw…

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…

Inirerekumendang: