Sisällysluettelo:

MIDI -ohjattu LED -rakenne: 7 vaihetta
MIDI -ohjattu LED -rakenne: 7 vaihetta

Video: MIDI -ohjattu LED -rakenne: 7 vaihetta

Video: MIDI -ohjattu LED -rakenne: 7 vaihetta
Video: 8x8x8 LED CUBE WITH ARDUINO UNO 2024, Marraskuu
Anonim
Image
Image

Todellisena musiikin ystävänä ja elektroniikan ja tietojenkäsittelytieteen opiskelijana olen aina halunnut rakentaa MIDI -laitteita, joita voisin käyttää elektronisen musiikin luomiseen.

Osallistuttuaan moniin esityksiin ja musiikkifestivaaleihin aloin todella kiinnostua valoesityksistä esitysten aikana.

Lukuisten tutkimusten jälkeen olen löytänyt enimmäkseen vain laitteita, jotka käyttävät mikrofonia eivätkä sallineet LEDien ohjaamista täsmälleen haluamallasi tavalla.

Tutustumalla yhä enemmän DAW- ja MIDI -signaaleihin päätin aloittaa tämän projektin!

Se koostuu 3D -rakenteesta, jossa on integroimattomia LED -valoja, joita itse asiassa ohjataan MIDI -signaaleilla (NoteOn, NoteOff ja CC Messages).

Jotta muusikko voisi hallita kunkin LEDin väriä ja voimakkuutta vain käyttämällä minkä tahansa DAW: n tuottamia MIDI -signaaleja.

Tällä ajatuksella halusin parantaa luovuutta valoshow'illa ja sallia jokaisen rakentaa oman, tehdä jokaisesta visuaalisesta esityksestä ainutlaatuisen.

Vaihe 1: Materiaalit

Pohjimmiltaan tämä projekti koostuu kahdesta osasta: MIDI -vastaanottopiiri ja LED -rakenne; ja mikro -ohjain, joka yhdistää nämä osat ja "kääntää" DAW: sta tulevat MIDI -signaalit LED -nauhoihin. Tässä on luettelo tarvikkeista, joita tarvitaan jokaiseen osaan.

MIDI -vastaanottopiiri:

  • 1 x 6N138 Optocoupler
  • 1 x 1N914 diodi
  • 1 x 5-nastainen Din-liitin (MIDI-liitin)
  • 2 x 220 ohmin vastukset
  • 1 x 4,7 K ohmin vastus
  • 1 USB/MIDI -liitin

LED -rakenne:

Käytin RGB -LED -nauhoja, jotka perustuvat WS2812B -LED -valoihin ja joita voidaan ohjata vain yhdellä digitaalisella portilla. Jos aiot käyttää suurta määrää LED -valoja, sinun on ehkä huolehdittava tarvittavasta enimmäisvirrasta (1 LED voi kuluttaa enintään 60 mA). Jos mikro -ohjain ei pysty käsittelemään tätä enimmäisarvoa, tarvitset toisen 5 V: n virtalähteen, joka pystyy tuottamaan tarpeeksi virtaa. Käytin 5V - 8A AC/DC -sovitinta, jossa oli oma ulostulosovitin ja kytkin.

Huomautus: Näyttää siltä, että voit käyttää tietokoneen virtalähdettä, koska he tietävät pystyvänsä tuottamaan todella suuren virran, mutta sinun on varmistettava, että se tuottaa vakaan 5 V: n tasavirran, ehkä käyttämällä 36 ohmin 5 watin tehovastus maan (musta) ja 5 V: n ulostulon (punainen) välillä, jotta vastuksen läpi kulkee riittävästi virtaa ja näin saadaan aikaan vakaa 5 V: n jännite.

Lopuksi käytin yksinkertaista Arduino Unoa ruuvisuojuksella linkin luomiseksi MIDI -signaalien ja LED -nauhojen välillä.

Vaihe 2: MIDI -tulopiirin rakentaminen

MIDI -tulopiirin rakentaminen
MIDI -tulopiirin rakentaminen
MIDI -tulopiirin rakentaminen
MIDI -tulopiirin rakentaminen

Jos olet kiinnostunut siitä, mikä on MIDI -protokolla ja miten se toimii, suosittelen lämpimästi tarkistamaan Notes and Volts -YouTube -kanavan, jossa on paljon mielenkiintoisia ja innovatiivisia opetusohjelmia ja MIDI Arduino -projekteja.

Tässä osassa keskityn vain MIDI -tulopiiriin. Ennen komponenttien juottamista voi olla hyvä idea rakentaa prototyyppi protoboardille ja tarkistaa, vastaanottavatko mikrokontrollerit DAW: sta tulevat MIDI -signaalit hyvin.

Seuraavat kaksi videota kuvaavat piirin rakentamista ja testaamista:

  • Piirin rakentaminen
  • Piirin testaus

Lopuksi voi myös olla hyvä idea tarkistaa tämä video ymmärtääksesi CC -viestit ja miten mikro -ohjaimesi voi tulkita automaatioleikkeitä esimerkiksi LED -valon kirkkauden säätämiseksi.

Vaihe 3: FL Studion määrittäminen (valinnainen)

FL Studion määrittäminen (valinnainen)
FL Studion määrittäminen (valinnainen)
FL Studion määrittäminen (valinnainen)
FL Studion määrittäminen (valinnainen)
FL Studion määrittäminen (valinnainen)
FL Studion määrittäminen (valinnainen)

Koska minusta tuntuu mukavalta käyttää FL Studiota, selitän, miten sen MIDI -käyttöliittymä määritetään oikein, mutta olen melko varma, että tämän menettelyn ei pitäisi olla jyrkästi erilainen, jos käytät toista digitaalista äänityöasemaa.

Liitä ensin USB/MIDI -liitin tietokoneeseen. Yleensä tällaisissa laitteissa on upotettu laiteohjelmisto, ja ne tunnistetaan MIDI -laitteiksi, vaikka ne olisivat epäkunnossa. Avaa sitten "Asetukset" -ikkuna (painamalla F10). Jos kaikki toimii oikein, huomaat lähtöosassa joitain MIDI -lähtölaitteita. Valitse laite ja varmista, että se on päällä.

Sitten sinun on määritettävä porttisi numero ja pidettävä se mielessä (esimerkiksi 0). Sulje tämä ikkuna (parametrit tallennetaan automaattisesti) ja lisää sitten uusi kanava: MIDI Out.

Sitten viimeinen asia, joka sinun on tehtävä, on määritellä tämän uuden kanavan portti: varmista, että valitset saman portin numeron, jonka määritit Asetukset -osiossa: tällä tavalla kanavallasi tulevat MIDI -viestit ovat nyt linkitetty MIDI -lähtöön.

Kun MIDI Out -kanava toistaa nuotin, "NoteOn" -viesti lähetetään MIDI -liitännän kautta. Samalla tavalla "NoteOff" -viesti lähetetään, kun muistiinpano julkaistaan.

Toinen mielenkiintoinen ominaisuus, joka tulee MIDI Out -kanavan mukana, on mahdollisuus ohjata erilaisia parametreja potentiometreillä. Napsauttamalla jotakin niistä hiiren kakkospainikkeella ja valitsemalla "Määritä …", voit saada heidät lähettämään CCM-viestejä (arvo 0-127), joita käytetään LEDien kirkkauden säätämiseen: valitse CC ja sitten Hyväksy.

Normaalisti FL Studio on nyt valmis lähettämään tietoja MIDI -käyttöliittymään! Seuraava on kirjoittaa koodi vilkkua Arduinossa ja mukauttaa se LED -rakenteeseesi.

Vaihe 4: LED -valojen liittäminen

LED -valojen liittäminen
LED -valojen liittäminen

LED -nauhojen liittäminen on melko yksinkertaista, koska ne tarvitsevat vain +5 V, GND ja data. Kuitenkin, kun suunnittelin yhdistäväni yli 20 niistä, päätin käyttää useita Arduino PWM -nastoja ja ilmoittaa useita Adafruit_NeoPixel -esiintymiä (koossa) välttääkseen tahattomat viiveet.

Liitteenä olevan kuvan tarkoituksena on myös selittää elektroniikan toiminta:

  • LED -nauhat saavat virtalähteen suoraan.
  • Arduinon virtalähteenä käytetään virtakytkintä
  • MIDI -tulopiiri saa virtaa Arduinolta, kun kytket virran päälle

Vaihe 5: 3D -rakenteen poistaminen käytöstä

3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu
3D -rakenteen muotoilu

Toistaiseksi tämä osa oli pisin, koska olin täysin uusi 3D-tulostuksen (ja mallinnuksen) kanssa. Halusin suunnitella rakenteen, joka näytti puoliksi räjähtäneeltä katkaistulta ikonaedrilta (kyllä, kesti jonkin aikaa löytää muodon tarkka nimi).

Voit tietysti suunnitella oman mallisi haluamallasi tavalla! En kerro yksityiskohtia mallinnusprosessista, mutta löydät STL -tiedostot, jos haluat suunnitella tämän rakenteen.

Eri osien kokoaminen kesti jonkin aikaa, koska minun piti laittaa yksi LED -valo kumpaankin pintaan ja liittää ne kaikki juottamalla suuri määrä johtoja ytimen sisään, joka on tällä hetkellä melko sotkuinen!

Huomaa: jos haluat suunnitella tällaisen rakenteen, tarvitset 10 kuusikulmaista kappaletta (noin 3 tuntia PP3DP UP -minitulostimella) ja 6 viisikulmaista kappaletta (2 tuntia).

Kun kussakin osassa on yksi LED, sinun on liitettävä jokainen 5 V: n ja GND: n liitin yhteen ja johdotettava jokaisen LEDin useat tulo- ja lähtöliittimet samalla tavalla kuin ne liitetään.

Lopuksi käytin LED -diffuusoriakryyliä peittämään kaikki kasvot ja tekemään niistä tasaiset.

Jäljelle jää vain koodi, joka paljastaa, ettei se ole niin monimutkaista!

Vaihe 6: Koodi

Koodi
Koodi

Kuten mainitsin sen edellisessä osassa, koodi paljastuu olevan melko yksinkertainen!

Itse asiassa se koostuu vain yhdestä MIDI -ilmentymästä ja useista Adafruit_NeoPixel -esiintymistä (niin paljon kuin on erilaisia nauhoja).

Periaatteessa, kun MIDI -luokka on ilmoitettu, se toimii eräänlaisilla "keskeytyksillä": NoteOn, NoteOff ja CCMessage. Kun MIDI -sisääntulon cicruit lähettää yhden näistä erityisistä signaaleista Arduinolle, liitetty aliohjelma kutsutaan. Sitten kaikki, mitä koodi tekee, on tietyn LED -valon sytyttäminen NoteOn -signaalissa, sen kytkeminen alas NoteOff -signaalin päälle ja päivitys CCMessagen nauhan kirkkauteen.

Määritin myös yksinkertaisen toiminnon, joka antaa mahdollisuuden valita LEDien väri lukemalla NoteOn -signaalin mukana tulevan nopeuden ja jokainen LED voi sitten olla joko punainen, violetti, sininen, turkoosi, vihreä, keltainen, oranssi tai valkoinen, riippuen nopeusarvosta 0-127.

Tärkeä huomioitava asia on, että sinun on irrotettava RX -nasta (MIDI -tulopiiristä), kun lataat luonnoksen, kun sarjaportti (käytetään tämän prosessin aikana) on liitetty kyseiseen nastaan!

Vaihe 7: Mitä nyt?

Työskentelen parhaillaan mukautetun kotelon kanssa, joka upottaa kaiken elektroniikan, ja ajattelen myös rakenteen nimeä! Kerro minulle, jos pidit tästä projektista, ja työskentelen eri ohjelmien parissa, kun aion päivittää tämän ohjeen lisäämällä videoita!

Suositeltava: