Satura rādītājs:

Gaismas šova jaka, kas reaģē uz mūziku: 7 soļi (ar attēliem)
Gaismas šova jaka, kas reaģē uz mūziku: 7 soļi (ar attēliem)

Video: Gaismas šova jaka, kas reaģē uz mūziku: 7 soļi (ar attēliem)

Video: Gaismas šova jaka, kas reaģē uz mūziku: 7 soļi (ar attēliem)
Video: Joka pēc alfabēts / Funny Alphabet 2024, Jūlijs
Anonim
Gaismas šova jaka, kas reaģē uz mūziku
Gaismas šova jaka, kas reaģē uz mūziku

Šī apmācība ir tapusi kā daļa no mana pēdējā gada projekta par grādu mūzikas tehnoloģijā un lietišķajā elektronikā Jorkas Universitātē. Tas ir paredzēts mūziķiem, kuri interesējas par elektroniku. Gatavais produkts būs LED matrica jakas aizmugurē, kas var radīt gaismas šovu atbilstoši mūzikai. Tas tiks darīts, analizējot audio ieejas, izmantojot Pure Data un Arduino. Jakai būs divi iestatījumi, kurus var kontrolēt ar slēdzi. Viens iestatījums kontrolēs gaismas diodes atbilstoši mūzikas amplitūdai, bet otrs - gaismas diodes mirgos pa vienai un mainīs krāsu atbilstoši skaļumam.

Kā tas darbosies

Šo ierīci veidos divas atsevišķas shēmas. Viens būs balstīts uz Arduino Mega, kas tieši savienots ar datoru. Otra ķēde balstīsies uz LilyPad Arduino un tiks pilnībā ievietota apvalkā un tiks darbināta, izmantojot 9 V akumulatoru. Abas šīs shēmas sazināsies savā starpā bezvadu režīmā, izmantojot XBee moduļus. Audio signālus saņems datora iebūvētais mikrofons un tie tiks analizēti tīros datos, lai iegūtu amplitūdas un frekvences datus. Šī informācija tiks pārsūtīta uz Arduino Mega, izmantojot MIDI ievades ķēdi, un pēc tam tā tiks pārsūtīta uz LilyPad, izmantojot XBees. Pēc tam LilyPad noteiks, kā uz jakas reaģēs gaismas diodes.

Kas jums būs nepieciešams

Mega shēmai

  • Arduino Mega 2560
  • Regulēts XBee Explorer
  • XBee 1mW izsekošanas antena - 1. sērija
  • Mega prototipa vairogs
  • USB tips A līdz B
  • USB -MIDI kabelis
  • MIDI ligzda
  • 1 x 220Ω rezistors
  • 1 x 270Ω rezistors
  • 1 x 1N4148 diode
  • 1 x 6N138 optronis

Par LilyPad shēmu

  • LilyPad Arduino 328 galvenā valde
  • LilyPad XBee Breakout Board
  • XBee 1mW izsekošanas antena - 1. sērija
  • LilyPad FTDI Basic Breakout Board
  • 72 x LilyPad gaismas diodes (visu pieejamo krāsu klāsts, ieskaitot baltu, zilu, sarkanu, dzeltenu, zaļu, rozā un violetu)
  • LilyPad slīdnis
  • USB 2.0 A-male-Mini-B kabelis
  • 9V akumulators
  • 9V akumulatora skava

Citi

  • Jaka
  • Dators ar instalētiem tīrajiem datiem un Arduino IDE
  • Aprīkojuma vads
  • Lodēšanas iekārtas
  • Stiepļu griezēji
  • Stiepļu noņēmēji
  • Adata ar lielu aci
  • Vītne
  • Vadošs pavediens
  • Šķēres
  • Mērlenta
  • Auduma līme vai caurspīdīga nagu laka
  • Krīts vai balts acu zīmulis
  • Audums oderei vai vecs t-krekls
  • Velcro
  • Urbis (iespējams)
  • Standarta LED (testēšanai)
  • Maizes dēlis (testēšanai)
  • Vēl 220Ω rezistors (testēšanai)
  • Multimetrs (testēšanai)

Šī projekta izmaksas būs ļoti atkarīgas no tā, cik daudz no iepriekšminētā aprīkojuma jums jau pieder. Tomēr tas, visticamāk, būs no 150 līdz 200 sterliņu mārciņām.

Īsa piezīme - LilyPad dēļi ir paredzēti šūšanai tieši pie tekstilizstrādājumiem, un tāpēc 9V akumulatora skavas lodēšana var radīt problēmas. Savienojums var būt smalks un viegli salauzt. Jūs varat iegādāties īpaši izstrādātas LilyPad plāksnes AAA vai LiPo baterijām, kuras jūs varētu izlemt izmantot. Tomēr es joprojām izvēlējos iet pa 9V maršrutu, jo to akumulatora darbības laiks ir ilgāks nekā AAA, un manā universitātē ir ierobežojumi LiPo bateriju lietošanai.

1. darbība: izveidojiet MIDI ievades shēmu

MIDI ievades shēmas izveide
MIDI ievades shēmas izveide
MIDI ievades shēmas izveide
MIDI ievades shēmas izveide
MIDI ievades shēmas izveide
MIDI ievades shēmas izveide

Vispirms apskatīsim MIDI ievades ķēdi. Tas būs jākonstruē uz prototipēšanas plates, kas tiks ievietota Arduino Mega. Tas tiks izmantots, lai sūtītu MIDI ziņojumus no Pure Data plākstera uz Mega, izmantojot tās “COMMUNICATION RX0” tapu. Skatiet iepriekš shēmu un fotoattēlu. Atkarībā no jūsu prototipēšanas plates jūsu izkārtojums var nedaudz atšķirties, bet es izvēlējos ievietot MIDI ligzdu kreisajā apakšējā stūrī. Šeit, iespējams, būs jāizmanto urbis, lai padarītu vairoga caurumus lielākus, lai tie atbilstu kontaktligzdai. Fotoattēlā esošie sarkanie vadi ir pievienoti 5 V spriegumam, brūnie ir pievienoti zemei, melnais vads ir pievienots 6N138 tapai 3, zilais vads ir pievienots 6N138 tapai 2 un dzeltenie vadi ir pievienoti RX0 pin. Prototipēšanas dēļa labajā pusē ir atstāta vieta, lai vēlāk būtu vieta XBee. Pārtraukumi, iespējams, būs jāveic dēļos uz tāfeles. Šajā piemērā tie bija jāizveido starp tapām uz 6N138.

MIDI ievades ķēdes pārbaude

Lai pārbaudītu ķēdi, augšupielādējiet zemāk esošo kodu Arduino Mega, izmantojot USB tipa A līdz B kabeli. Pārliecinieties, ka vairogs nav ievietots, kad to darāt, jo kodu nevar augšupielādēt, ja kaut kas ir pievienots RX vai TX tapām. Kods ietver arī MIDI.h bibliotēku, kas, iespējams, būs jālejupielādē, ir pieejama zemāk esošajā saitē.

MIDI.h

Pēc tam ievietojiet vairogu mega un pievienojiet to citam datora USB portam, izmantojot MIDI -USB kabeli. MIDI beigas, kas jums būs jāizmanto, tiks apzīmētas kā “ārā”. Izveidojiet vienkāršu shēmu uz maizes dēļa savienošanas tapas 2 ar 220Ω rezistoru un pēc tam pievienojiet to standarta LED anodei. Pievienojiet LED katodu zemei.

Pēc tam izveidojiet vienkāršu Pure Data ielāpu ar [60 100] ziņojumu un [0 0] ziņojumu, kas abi ir savienoti ar piezīmes objektu, izmantojot tā kreiso ieeju. Pārliecinieties, vai šis plāksteris ir pievienots MIDI ievades ķēdei, atverot MIDI iestatījumus un mainot izvadierīci. Ja tas nav pieejams, pirms Pure Data atvēršanas pārliecinieties, vai esat pievienojis MIDI ķēdi datoram. Tagad, ja jūsu ķēde ir pareiza, gaismas diodei vajadzētu iedegties, nospiežot ziņojumu [60 100], un tai vajadzētu izslēgties, nospiežot ziņojumu [0 0].

2. solis: LED matricas projektēšana

LED matricas projektēšana
LED matricas projektēšana
LED matricas projektēšana
LED matricas projektēšana
LED matricas projektēšana
LED matricas projektēšana

Tālāk jāapsver LED matrica jakas aizmugurē. Tas tiks tieši savienots ar galveno LilyPad plati. Parasti, lai kontrolētu gaismas diodes, izmantojot mikrokontrolleru, tās katra tiktu piešķirta savām individuālajām tapām. Tomēr ar tikai vienu Arduino LilyPad tas būtu ļoti ierobežojošs. Kopumā LilyPad ir 12 digitālās tapas un 6 analogās, tātad potenciāli 18 izejas tapas. Tomēr, tā kā viena no šīm tapām tiks izmantota vēlāk, lai kontrolētu slīdņa slēdzi, paliks tikai 17.

Šādā situācijā var izmantot tehniku, ko sauc par multipleksēšanu, lai maksimāli palielinātu LilyPad vadības tapu potenciālu. Tas izmanto divus faktus:

  • Gaismas diodes ir diodes un ļauj strāvai plūst tikai vienā virzienā.
  • Cilvēka acis un smadzenes apstrādā attēlus daudz lēnāk, nekā gaisma var pārvietoties, tādēļ, ja gaismas diodes mirgos pietiekami ātri, mēs to nepamanīsim. Tas ir jēdziens, kas pazīstams kā “redzes noturība”.

Izmantojot šo paņēmienu, gaismas diožu skaits, ko var kontrolēt, ir (n/2) x (n- (n/2)), kur n ir pieejamo vadības tapu skaits. Tāpēc, ja ir pieejamas 17 tapas, jābūt iespējai kontrolēt 72 gaismas diodes 9x8 matricā.

Gaismas diodes izkārtojuma diagramma 9x8 matricā ir redzama iepriekš, ieskaitot ieteikumus par tapām, kurām jāpievieno katra rinda un kolonna. Ir svarīgi atzīmēt, ka rindas un kolonnas nedrīkst pieskarties. Turklāt nav nepieciešami rezistori, jo katrai gaismas diodei ir sava iebūvēta ar pretestību 100Ω.

Pirms sākat šūt, jums vajadzētu plānot ķēdes izkārtojumu uz jaka. Laba vieta, kur sākt, ir atzīmēt uz jakas, kur gaismas diodes iet, ar maziem punktiem, izmantojot mērlenti, lai nodrošinātu to vienmērīgu izvietojumu. Melnai ādas jakai balts acu zīmulis darbojas ļoti labi, un to var viegli noslaucīt, ja tiek pieļauta kļūda. Tomēr arī citi nesēji, piemēram, krīts, var darboties atkarībā no jakas materiāla un krāsas. Iepriekš var redzēt manu izmantoto LED krāsu izkārtojumu, kas darbosies ar kodu, kas sniegts vēlāk. Jūs varat izmantot citu izkārtojumu, lai gan kodā tas būs jāmaina.

Nākamais, kas jādomā, ir tas, kur dosies LilyPad, LilyPad XBee un barošanas avots. Jakai, kuru izmantoju, visprātīgākā un diskrētākā vieta šķita jakas aizmugurē, apakšā un iekšpusē. Tas ir tāpēc, ka maz ticams, ka šeit nokļūs valkātāju rokas, un tā var viegli piekļūt LED matricai. Turklāt, tā kā jaka, kuru izmantoju, apakšā bija vaļīga, tā joprojām bija ērta.

3. solis: LED matricas šūšana

LED matricas šūšana
LED matricas šūšana
LED matricas šūšana
LED matricas šūšana
LED matricas šūšana
LED matricas šūšana

Šajā brīdī jūs varat sākt šūt. Ar vadošu pavedienu var būt sarežģīti strādāt, tāpēc šeit ir daži noderīgi padomi:

  • Komponenta pielīmēšana vietā, izmantojot auduma līmi, ievērojami atvieglos šūšanu.
  • Dažādiem šuvju veidiem būs atšķirīgas estētiskās un funkcionālās īpašības, tāpēc pirms darba uzsākšanas ir vērts tos izpētīt. Pamata skriešanas dūrienam tomēr vajadzētu būt piemērotam šim projektam.
  • Mezgliem ir tendence diezgan viegli atbrīvoties ar vadošu pavedienu, jo tas ir “pavasarīgāks” nekā parasti. Risinājums tam ir neliela daudzuma caurspīdīgas nagu lakas vai auduma līmes izmantošana to aizzīmogošanai. Pirms nogriezt astes, ļaujiet viņiem nožūt.
  • Veidojot savienojumus ar ķēdes komponentiem vai savienojot kopā divas vadītspējīgas vītnes līnijas, ir ieteicams tās pāršūt vairākas reizes, lai nodrošinātu labu mehānisko un elektrisko savienojumu.
  • Pārliecinieties, ka adata ir asa un tai ir liela acs. Iziešana caur jaku var būt grūta, un vadošs pavediens ir biezāks nekā parasti.
  • Uzmanieties no vaļīgiem matiem uz diega. Tie var radīt ķēdē šortus, ja tie pieskaras citām šūšanas līnijām. Ja tie kļūst par būtisku problēmu, visas līnijas var aizzīmogot ar caurspīdīgu nagu laku vai auduma līmi, kad pārbaude ir notikusi un viss noteikti darbojas pareizi.

Laba vieta, kur sākt šūt, ir rindas. Lai padarītu tos pēc iespējas taisnākus, izmantojot lineālu, varat uzzīmēt vājas līnijas. Kad esat tos uzšuvis, pārejiet uz kolonnām. Katru reizi, kad tiek sasniegta rinda, būs jāpievērš liela uzmanība, jo ir svarīgi, lai abi nešķērsotos. To var panākt, izveidojot dūrienu kolonnai jakas iekšpusē šim krustojumam, kā redzams iepriekš redzamajā fotoattēlā. Kad esat pabeidzis visas rindas un kolonnas, multimetru var izmantot, lai pārbaudītu, vai nav šortu.

Kad esat apmierināts, sāciet šūt gaismas diodes kolonnai jakas labajā malā. Pārliecinieties, ka katrs anods ir pievienots savai rindai un katrs katode ir pievienots kolonnai pa kreisi. Pēc tam ievietojiet LilyPad Arduino vietā, izmantojot auduma līmi, apmēram zem šīs kolonnas, pārliecinoties, ka FTDI sadalīšanas dēļa tapas ir vērstas uz leju. Šujiet LilyPad 11. tapu līdz 1. rindai, 12. tapu līdz 2. rindai un tā tālāk, līdz A5 tapa ir uzšūta līdz 9. rindai. Pēc tam šujiet 10. tapu pie labās kolonnas. Lai pārbaudītu šo pirmo kolonnu, varat izmantot tālāk norādīto kodu. Augšupielādējiet kodu un darbiniet LilyPad, savienojot to ar datoru, izmantojot FTDI sadalīšanas paneli un USB 2.0 A-Male to Mini-B kabeli.

Ja, pievienojot LilyPad, nav pieejams pareizais ports, iespējams, būs jāinstalē FTDI draiveris, kas pieejams zemāk esošajā saitē.

FTDI draivera instalēšana

Kad iedegsies šī pirmā gaismas diožu kolonna, ir pienācis laiks pārējo uzšūt uz jakas. Tas ir diezgan laikietilpīgs process, un tāpēc, iespējams, vislabāk ir to atstāt dažu dienu laikā. Pārbaudiet katru kolonnu, ejot garām. To var izdarīt, pielāgojot iepriekš minēto kodu tā, lai pārbaudāmās kolonnas tapa tiktu iestatīta kā izeja un pēc tam cilpā tiktu iestatīta LOW. Pārliecinieties, vai pārējās kolonnas tapas ir iestatītas kā HIGH, jo tas nodrošinās to izslēgšanu.

4. solis: slēdža pievienošana

Slēdža pievienošana
Slēdža pievienošana

Pēc tam varat pievienot slēdzi, kas tiks izmantots, lai mainītu jakas iestatījumus. Tas ir jāšuj jakas iekšpusē zem LilyPad Arduino tāfeles. Izmantojot vadošu vītni, gals, kas apzīmēts ar “izslēgts”, jāpievieno zemei, bet gals ar “ieslēgts” jāpievieno tapai 2.

Jūs varat pārbaudīt slēdzi, izmantojot zemāk esošo kodu. Tas ir ļoti vienkārši un ieslēdz apakšējo labo LED, ja slēdzis ir atvērts, un izslēdz to, ja slēdzis ir aizvērts.

5. darbība: padariet ierīci bezvadu

Ierīces padarīšana par bezvadu
Ierīces padarīšana par bezvadu
Ierīces padarīšana par bezvadu
Ierīces padarīšana par bezvadu
Ierīces padarīšana par bezvadu
Ierīces padarīšana par bezvadu

LilyPad XBee un XBee Explorer sagatavošana

Sagatavojiet LilyPad XBee konfigurēšanai, pielodējot uz 6 kontaktu taisnā leņķa vīriešu galviņas. Tas vēlāk ļaus to savienot ar datoru, izmantojot LilyPad FTDI Basic Breakout plati un USB Mini kabeli. Lodējiet arī 9V akumulatora skavu pie LilyPad XBee ar sarkano vadu uz “+” tapu un melno vadu uz “-” tapu.

Savienojiet Explorer paneli ar Arduino Mega prototipēšanas vairogu. 5V un zemei Explorer panelī būs nepieciešams savienojums ar 5V un Ground uz Mega, Explorer izejas tapai būs nepieciešams savienojums ar RX1 uz Mega, un Explorer ievadei būs nepieciešams savienojums ar TX1 uz Mega.

XBees konfigurēšana

Tālāk XBees ir jākonfigurē. Pirmkārt, jums bez maksas būs jāinstalē CoolTerm programmatūra, kas ir pieejama zemāk esošajā saitē.

CoolTerm programmatūra

Noteikti kaut kādā veidā nošķiriet abas XBees, jo ir svarīgi, lai tās netiktu sajauktas.

Vispirms konfigurējiet XBee datoram. Ievietojiet to LilyPad XBee Breakout panelī un pievienojiet to datoram, izmantojot FTDI pamata sadalīšanas paneli un USB mini kabeli. Atveriet CoolTerm un opcijās atlasiet pareizo seriālo portu. Ja jūs to neredzat, mēģiniet nospiest 'Atkārtoti skenēt seriālos portus'. Pēc tam pārliecinieties, vai datu pārraides ātrums ir 9600, ieslēdziet vietējo atbalsi un iestatiet taustiņu emulāciju uz CR. Tagad CoolTerm var pievienot XBee.

Lai pārslēgtu XBee komandu režīmā, galvenajā logā ierakstiet “+++”. Nespiediet atgriešanās taustiņu. Tas ļaus to konfigurēt, izmantojot AT komandas. Ja tas ir izdevies, pēc ļoti īsas pauzes ir jāatbild uz ziņojumu “Labi”. Ja pirms nākamās rindas ir vairāk nekā 30 sekunžu aizkave, komandu režīms iziet un tas būs jāatkārto. Lai iestatītu PAN ID, MY ID, galamērķa ID un saglabātu izmaiņas, ir jāievada daudzas AT komandas. Pēc katras šīs komandas ir jāatgriež atgriešanās, un tās var redzēt iepriekšējā tabulā. Kad tas ir pabeigts datoram XBee, tas ir jāatvieno un tas pats process ir jāveic jakai XBee.

Jūs varat pārbaudīt jaunos XBee iestatījumus, ierakstot katru AT komandu bez vērtības beigās. Piemēram, ja ierakstāt “ATID” un nospiežat atgriešanās taustiņu, jāatkārto “1234”.

XBees pārbaude

Šajā brīdī šujiet LilyPad XBee uz jakas blakus LilyPad Arduino. Ar vadošu vītni jāveic šādi savienojumi:

  • 3.3V uz LilyPad XBee līdz '+' uz LilyPad
  • Zeme uz LilyPad XBee līdz zemei uz LilyPad
  • RX uz LilyPad XBee līdz TX uz LilyPad
  • TX uz LilyPad XBee līdz RX uz LilyPad

Tagad ierīci var pārbaudīt, lai pārliecinātos, ka XBees darbojās pareizi. Tālāk norādītais kods “Wireless_Test_Mega” ir jāaugšupielādē Arduino Mega, un tā galvenais mērķis ir saņemt MIDI ziņojumus no vienkāršā iepriekš izveidotā Pure Data ielāpa un pārsūtīt dažādas vērtības, izmantojot XBee. Ja tiek saņemta MIDI piezīme ar 60 soli, tiks nosūtīts ziņojums “a”. Alternatīvi, ja tiek saņemts piezīmes ziņojums, tiks pārraidīts “b”.

Turklāt LilyPad ir jāaugšupielādē tālāk norādītais kods “Wireless_Test_LilyPad”. Tas saņem ziņojumus no Mega, izmantojot XBees, un attiecīgi kontrolē apakšējo labo LED. Ja tiek saņemts ziņojums “a”, kas nozīmē, ka Mega ir saņēmusi MIDI piezīmi ar 60 augstumu, gaismas diode iedegsies. No otras puses, ja “a” netiek saņemts, gaismas diode izslēgsies.

Kad kods ir augšupielādēts abos paneļos, pārliecinieties, vai vairogs ir ievietots Mega un vai tas ir savienots ar datoru, izmantojot abus kabeļus. Ievietojiet datoru XBee Explorer panelī. Pēc tam pārliecinieties, vai FTDI Breakout dēlis ir atvienots no jakas, un ievietojiet jaku XBee LilyPad XBee. Pievienojiet 9V akumulatoru un mēģiniet nospiest dažādus ziņojumus sadaļā Pure Data. Jakas apakšējā labajā gaismas diodē vajadzētu ieslēgties un izslēgties.

6. solis: pēdējie pieskārieni

Pēdējie pieskārieni
Pēdējie pieskārieni
Pēdējie pieskārieni
Pēdējie pieskārieni
Pēdējie pieskārieni
Pēdējie pieskārieni

Kods un tīri datu ielāps

Kad esat priecīgs, ka jaka darbojas bezvadu režīmā, augšupielādējiet zemāk esošo “MegaCode” skici Arduino Mega un skici “LilyPadCode” LilyPad. Atveriet Pure Data ielāpu, pārliecinoties, ka DSP ir ieslēgts un audio ieeja ir iestatīta uz datora iebūvēto mikrofonu. Mēģiniet atskaņot mūziku un pārvietot slēdzi. Jums var būt nepieciešams nedaudz pielāgot sliekšņus tīrajos datos atkarībā no tā, cik daudz vai maz gaismas diodes reaģē uz skaņu.

Jaunas oderes pievienošana

Visbeidzot, lai jaka būtu estētiski pievilcīgāka un ērtāk valkājama, jakas iekšpusē var pievienot citu oderi, lai aizsegtu šūšanu un detaļas. Tas jādara, izmantojot velcro, lai varētu viegli piekļūt ķēdei, ja ir jāveic izmaiņas.

Pirmkārt, šujiet “cilpas” sloksnes (mīkstāko daļu) pie jakas iekšpusē, gar augšpusi un leju abās pusēs. Ieteicams atstāt dibenu brīvu, jo tas ļaus gaisam nokļūt sastāvdaļās. Pēc tam nogrieziet tāda paša izmēra auduma gabalu un pie tā šujiet velcro "āķa" sloksnes gar augšu un uz leju abās pusēs. Tāpat tajā pašā pusē, kur velcro, un visērtākajā vietā, uzšujiet kabatu, kurā varēs sēdēt akumulators. Piemērus skatiet iepriekš redzamajos attēlos.

7. solis: esat pabeidzis

Jūsu bezvadu gaismas izstādes jakai tagad vajadzētu būt pabeigtai un veiksmīgi reaģēt uz audio! Vienam iestatījumam vajadzētu radīt efektu, piemēram, amplitūdas joslu, un otram vajadzētu būt atsevišķām gaismas diodēm, kas mirgo mūzikā ar krāsām atkarībā no skaņas augstuma. Video piemērus skatiet iepriekš. Ja jūs domājat, krāsa un piķis ir saistīti ar Rozenkreiceru ordeni, kura pamatā ir tikai intonācija. Es ceru, ka jums patika šis projekts!

Ieteicams: