Turinys:

MIDI valdoma LED struktūra: 7 žingsniai
MIDI valdoma LED struktūra: 7 žingsniai

Video: MIDI valdoma LED struktūra: 7 žingsniai

Video: MIDI valdoma LED struktūra: 7 žingsniai
Video: The Beautiful Island of Santorini - 7.5 mile/12km Hike - 4K - with Captions 2024, Liepa
Anonim
Image
Image

Kaip tikras muzikos mylėtojas ir elektronikos bei informatikos studentas, visada norėjau sukurti MIDI įrenginius, kuriuos galėčiau panaudoti kurdamas elektroninę muziką.

Apsilankęs daugybėje pasirodymų ir muzikos festivalių, pasirodymų metu pradėjau tikrai domėtis šviesos šou.

Po daugybės tyrimų dažniausiai radau tik įrenginius, kurie naudoja mikrofoną ir negali leisti valdyti šviesos diodų tiksliai taip, kaip norite.

Vis labiau susipažindamas su DAW ir MIDI signalais, nusprendžiau pradėti šį projektą!

Jį sudaro 3D struktūra su integruotais šviesos diodais, kurie iš tikrųjų valdomi MIDI signalais („NoteOn“, „NoteOff“ir „CC Messages“).

Kad muzikantas galėtų valdyti kiekvieno šviesos diodo spalvą ir intensyvumą tik naudodamas bet kurio DAW generuojamus MIDI signalus.

Šia idėja norėjau sustiprinti kūrybiškumą per šviesos šou ir leisti kiekvienam kurti savo, kad kiekvienas vizualinis pasirodymas būtų unikalus.

1 žingsnis: medžiagos

Iš esmės šį projektą sudaro dvi dalys: MIDI priėmimo grandinė ir LED struktūra; ir mikrovaldiklį, kuris sujungtų tas dalis ir „išverstų“MIDI signalus, gaunamus iš DAW, į LED juostas. Čia yra kiekvienai daliai reikalingų medžiagų sąrašas.

MIDI priėmimo grandinė:

  • 1 x 6N138 optronas
  • 1 x 1N914 diodas
  • 1 x 5 kontaktų Din Jack (MIDI Jack)
  • 2 x 220 omų rezistoriai
  • 1 x 4,7 K omo rezistorius
  • 1 USB/MIDI lizdas

LED struktūra:

Aš naudoju RGB šviesos diodų juosteles, pagrįstas WS2812B šviesos diodais, kuriuos galima valdyti tik su 1 skaitmeniniu prievadu. Jei planuojate naudoti daug šviesos diodų, gali tekti rūpintis maksimalia reikalinga srove (1 šviesos diodas gali sunaudoti ne daugiau kaip 60 mA). Jei mikrovaldiklis negali valdyti šios didžiausios vertės, jums reikės kito 5 V maitinimo šaltinio, galinčio tiekti pakankamai srovės. Aš naudoju 5V - 8A AC/DC adapterį su tam skirtu išvesties adapteriu ir jungikliu.

Pastaba: atrodo, kad galite naudoti kompiuterio maitinimo bloką, nes jie žino, kad gali tiekti tikrai didelę srovę, tačiau turėsite įsitikinti, kad jis tiekia stabilią 5 V nuolatinę įtampą, galbūt naudodami 36 omų 5 vatų galios rezistorius tarp žemės (juodas) ir 5 V išėjimo (raudonas), kad per rezistorių tekėtų pakankamai srovės ir taip būtų užtikrintas stabilus 5 V įtampa.

Galiausiai, norėdamas užmegzti ryšį tarp MIDI signalų ir šviesos diodų juostų, panaudojau paprastą „Arduino Uno“su užsukamu ekranu.

2 žingsnis: sukurkite MIDI įvesties grandinę

MIDI įvesties grandinės kūrimas
MIDI įvesties grandinės kūrimas
MIDI įvesties grandinės kūrimas
MIDI įvesties grandinės kūrimas

Jei jus domina, kas yra būtent MIDI protokolas ir kaip jis veikia, aš labai rekomenduoju jums patikrinti „YouTube“kanalą „Notes and Volts“, kuriame yra daug įdomių ir novatoriškų vadovėlių bei „MIDI Arduino“projektų.

Šioje dalyje aš sutelksiu dėmesį tik į MIDI įvesties grandinę. Prieš pradedant lituoti komponentus, gali būti naudinga sumontuoti prototipą ant prototipo ir patikrinti, ar iš DAW gaunami MIDI signalai yra gerai priimti.

Šie du vaizdo įrašai aprašo, kaip sukurti ir išbandyti grandinę:

  • Grandinės kūrimas
  • Grandinės bandymas

Galiausiai taip pat gali būti gera idėja patikrinti šį vaizdo įrašą, kad suprastumėte CC pranešimus ir kaip jūsų mikrovaldiklis gali interpretuoti automatikos įrašus, kad, pavyzdžiui, valdytų šviesos diodų ryškumą.

3 veiksmas: „FL Studio“konfigūravimas (pasirinktinai)

„FL Studio“konfigūravimas (pasirinktinai)
„FL Studio“konfigūravimas (pasirinktinai)
„FL Studio“konfigūravimas (pasirinktinai)
„FL Studio“konfigūravimas (pasirinktinai)
„FL Studio“konfigūravimas (pasirinktinai)
„FL Studio“konfigūravimas (pasirinktinai)

Kadangi jaučiuosi patogiai naudodamas „FL Studio“, paaiškinsiu, kaip tinkamai sukonfigūruoti jos MIDI sąsają, tačiau esu tikras, kad ši procedūra neturėtų labai skirtis, jei naudojate kitą skaitmeninę garso darbo vietą.

Pirmiausia turėsite prijungti USB/MIDI lizdą prie kompiuterio. Paprastai tokie įrenginiai yra su įmontuota programine įranga ir yra atpažįstami kaip MIDI įrenginiai, net jei jų nėra. Tada atidarykite langą „Nustatymai“(paspausdami F10). Jei viskas veikia tinkamai, išvesties skyriuje pastebėsite kai kuriuos išvesties MIDI įrenginius. Pasirinkite savo įrenginį ir įsitikinkite, kad jis įjungtas.

Tada turėsite apibrėžti savo prievado numerį ir nepamiršti jo (pavyzdžiui, 0). Tiesiog uždarykite šį langą (parametrai išsaugomi automatiškai) ir pridėkite naują kanalą: „MIDI Out“.

Paskutinis dalykas, kurį turėsite padaryti, yra apibrėžti šio naujo kanalo prievadą: įsitikinkite, kad pasirinkote tą patį prievado numerį, kurį nustatėte skiltyje „Nustatymai“: tai atlikę, iš jūsų kanalo gaunami MIDI pranešimai susietas su MIDI išvestimi.

Dabar, kai užrašą groja kanalas „MIDI Out“, per „MIDI“sąsają bus išsiųstas pranešimas „NoteOn“. Panašiai pranešimas „NoteOff“bus išsiųstas, kai pastaba bus išleista.

Dar viena įdomi MIDI Out kanalo savybė yra galimybė valdyti skirtingus parametrus naudojant potenciometrus. Dešiniuoju pelės klavišu spustelėdami vieną iš jų ir pasirinkę „Konfigūruoti …“, galite priversti juos siųsti CCMessages (vertė nuo 0 iki 127), kuri bus naudojama šviesos diodų ryškumui valdyti: pasirinkite CC ir tada Accept.

Paprastai „FL Studio“dabar yra pasirengusi siųsti duomenis į jūsų MIDI sąsają! Kitas yra parašyti kodą, kad jis mirksėtų „Arduino“, ir pritaikyti jį prie jūsų LED struktūros.

4 žingsnis: šviesos diodų prijungimas

Šviesos diodų prijungimas
Šviesos diodų prijungimas

Šviesos diodų juostų prijungimas yra gana paprastas, nes joms reikia tik +5 V, GND ir duomenų. Tačiau, kai planavau prijungti daugiau nei 20 iš jų, nusprendžiau naudoti kelis „Arduino PWM“kaiščius ir paskelbti kelis „Adafruit_NeoPixel“atvejus (esantis kūne), kad išvengčiau bet kokio nenumatyto delsimo.

Pridėtame paveikslėlyje taip pat ketinama paaiškinti, kaip veikia elektronika:

  • Šviesos diodų juostos maitinamos tiesiogiai iš maitinimo šaltinio.
  • „Arduino“maitinimui naudojamas maitinimo jungiklis
  • įjungus jungiklį, MIDI įvesties grandinę maitina „Arduino“

5 veiksmas: 3D struktūros išjungimas

3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas
3D struktūros iškraipymas

Iki šiol ši dalis buvo ilgiausia, nes buvau visiškai nauja 3D spausdinimo (ir modeliavimo) srityje. Norėjau sukurti struktūrą, kuri atrodytų kaip pusiau susprogęs sutrumpintas ikosaedras (taip, man prireikė šiek tiek laiko, kol suradau tikslų formos pavadinimą).

Žinoma, jūs galite laisvai kurti savo norimos formos modelį! Aš nedetalizuosiu modeliavimo proceso, bet rasite STL failus, jei norite sukurti šią struktūrą.

Skirtingų dalių surinkimas užtruko šiek tiek laiko, nes turėjau įdėti po vieną šviesos diodą į kiekvieną veidą ir prijungti juos visus, lituodamas daugybę laidų šerdies viduje, kuri šiuo metu yra gana netvarkinga!

Pastaba: jei norite suprojektuoti tokią struktūrą, jums reikės 10 šešiakampių dalių (apie 3 valandas, naudojant PP3DP UP mini spausdintuvą) ir 6 penkiakampius gabalus (2 valandas).

Kai kiekvienoje dalyje yra vienas šviesos diodas, turėsite sujungti kiekvieną 5V ir GND gnybtus ir prijungti kelis kiekvieno šviesos diodo įvesties ir išvesties gnybtus taip, kaip juos prijungsite.

Galiausiai aš naudoju LED difuzinį akrilą, kad padengčiau kiekvieną veidą ir kad jie būtų nuolat šviesūs.

Po to lieka tik kodas, kuris atskleidžia, kad nėra toks sudėtingas!

6 žingsnis: Kodas

Kodas
Kodas

Kaip jau minėjau ankstesnėje dalyje, kodas parodo, kad tai gana paprasta!

Tiesą sakant, jį sudaro tik vienas MIDI egzempliorius ir keli „Adafruit_NeoPixel“egzemplioriai (tiek, kiek yra skirtingų juostelių).

Iš esmės, paskelbus, MIDI klasė veikia su tam tikrais „pertraukimais“: „NoteOn“, „NoteOff“ir „CCMessage“. Kai MIDI įvesties cicruit perduoda vieną iš šių specifinių signalų „Arduino“, vadinama asocijuota paprogramė. Tada viskas, ką daro kodas, yra įjungti tam tikrą „NoteOn“signalo šviesos diodą, jį sumažinti įjungus „NoteOff“signalą ir atnaujinti „CCMessage“juostos ryškumą.

Be to, aš apibrėžiau paprastą funkciją, kuri suteikia galimybę pasirinkti šviesos diodų spalvą, skaitant greitį, gautą su „NoteOn“signalu, ir kiekvienas šviesos diodas gali būti raudonas, violetinis, mėlynas, turkio spalvos, žalias, geltonas, oranžinis arba baltas, priklausomai nuo greičio vertės nuo 0 iki 127.

Svarbu atkreipti dėmesį į tai, kad įkeldami eskizą turėsite atjungti RX kaištį (gaunamą iš MIDI įvesties grandinės), nes prie to kaiščio prijungtas nuoseklusis prievadas (naudojamas šio proceso metu)!

7 žingsnis: kas dabar?

Šiuo metu dirbu prie pasirinktinio gaubto, kad įterpčiau visą elektroniką, ir taip pat galvoju apie struktūros pavadinimą! Praneškite man, ar jums patiko šis projektas, ir aš dirbu prie įvairių laidų, nes planuoju atnaujinti šią instrukciją, pateikdama daugiau vaizdo įrašų!

Rekomenduojamas: