Sisällysluettelo:
- Vaihe 1: Materiaalit
- Vaihe 2: Suunnittelu
- Vaihe 3: Rakentaminen ja johdotus
- Vaihe 4: Ohjelmointi
- Vaihe 5: Asennus
Video: Arduino Uno Midi Fighter: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Tämä ohje on luotu täyttämään Etelä -Floridan yliopiston Makecourse -projektin vaatimus (www.makecourse.com)
DJ Techtoolsin suosittuun MidiFighteriin perustuvaa kotitekoista Arduino -käyttöistä musiikki -instrumentin digitaalista käyttöliittymää (MIDI) voidaan käyttää MIDI -laitteena kaikissa Digital Audio Workstation (DAW) -ohjelmistoissa. MIDI -ohjain voi lähettää ja vastaanottaa MIDI -viestejä tietokoneelta, ja sitä voidaan käyttää suoraan minkä tahansa ohjelmiston ohjaamiseen. Lisäksi MIDI -ohjaimen säätimet ovat täysin muokattavissa - mikä tarkoittaa, että jokainen yksittäinen painike, liukusäädin ja nuppi voidaan yhdistää mihin tahansa DAW -toiminnon. Esimerkiksi painikkeen painaminen voi toistaa tietyn nuotin tai olla ohjelmoitu vaihtamaan ääniprojektisi tempoa.
github.com/jdtar/Arduino-Midi-Controller
Vaihe 1: Materiaalit
Alla on luettelo hankkeessa käytetyistä materiaaleista ja työkaluista.
Arduino Uno
Leipälauta
4051/4067 Multiplexer
Hyppyjohdot
Lisäjohto
2x 10k ohmin lineaariset liukupotentiometrit
16x Sanwa 24mm painikkeet
Lämpö kutistuu
Juotin
Partaterä
4,7 kΩ: n vastus
Akryylilevy (kannelle)
Kotelo painikkeille ja Arduinolle
3D tulostin
Laserleikkuri
Vaihe 2: Suunnittelu
Minulle oli jo hankittu MIDI -ohjaimen kotelo ennen projektin aloittamista, joten pilkkasin kannen luonnoksen hahmottaakseni, mihin kaikki oli sijoitettava. Tiesin, että halusin ainakin 16 painiketta ja pari potentiometriä, joten yritin jakaa komponentit mahdollisimman tasaisesti.
Kun olin laatinut kannen asettelun, vienin tiedoston 1: 1 PDF -muodossa ja lähetin sen laserleikkurille leikkaamaan arkki akryyliä. Ruuvinreikien kohdalla merkitsin haluamani reiät merkillä ja sulatin akryylin kuumalla filamentilla.
Liitteenä on 1: 1 PDF, joka voidaan tulostaa 1: 1 -muodossa ja leikata sähkötyökaluilla, jos laserleikkuria ei ole saatavilla.
Vaihe 3: Rakentaminen ja johdotus
Akryylin leikkaamisen jälkeen huomasin, että akryyli oli liian ohut tukemaan kaikkia komponentteja. Leikkasin sitten toisen arkin ja liimasin ne yhteen, mikä sattui toimimaan täydellisesti.
Komponenttien kytkentä kesti jonkin verran yritystä ja virhettä, mutta tuloksena oli Fritzing -luonnos. Johdotin ensin maadoitusjohdot ja 4,7 kΩ: n vastuksen, juotin ja lämpö kutisteli painikkeiden liitännät. Kahden potentiometrin asentaminen vaati akryylin ruuveille sulatusaukkoja. Kun kaksi potentiometriä oli kierretty, ne kytkettiin analogisiin A0- ja A1 -nastoihin. Kun johdotus oli valmis, muistin, että fadereissani ei ollut nuppeja, joten sen ostamisen sijaan tulostin joitakin nuppikorkkeja 3-D-tulostimella luonnostelemalla sen Autodesk Fusion 360: ssa ja viemällä STL-tiedostoon. De
Arduino Unossa on vain 12 käytettävissä olevaa digitaalitulonappia, mutta 16 painiketta oli kytkettävä. Tämän kompensoimiseksi liitin 74HC4051 -multiplekserin leipälevylle, joka käyttää neljää digitaalista sisääntulonappia ja mahdollistaa useiden signaalien käytön jaetun linjan käyttämiseksi, mikä johtaa 8 käytettävissä olevaan digitaalitulonappiin yhteensä 16 käytettävissä olevaan digitaaliseen nastaan.
Painikkeiden kytkeminen oikeisiin nastoihin oli yksinkertaisesti kysymys 4x4 -matriisin luomisesta ja sen käyttämisestä koodissa. Hankala osa oli kuitenkin se, että ostetulla erityisellä multiplekserillä oli erityinen nasta -asettelu, jota tietolomake auttoi, ja myös minulla oli mielessä erityinen muistiinpanojen asettelu, kun kytkin painikkeet ylös, mikä näytti vähän tältä:
HUOMAUTUS MATRIX
[C2] [C#2] [D2] [D#2]
[G#2] [A1] [A#2] [B1]
[E1] [F1] [F#1] [G1]
[C2] [C#2] [D2] [D#2]
PIN -MATRIX (M = MUX -TULO)
[6] [7] [8] [9]
[10] [11] [12] [13]
[M0] [M1] [M2] [M3]
[M4] [M5] [M6] [M7]
Vaihe 4: Ohjelmointi
Kun kokoonpano on valmis, Arduinon ohjelmointi on jäljellä. Liitteenä oleva käsikirjoitus on kirjoitettu siten, että se on helposti muokattavissa.
Käsikirjoituksen alku sisältää MIDI.h -kirjaston ja Notes and Volts -blogista lainatun ohjainkirjaston, jotka molemmat sisältyvät koodin zip -tiedostoon. Ohjainkirjastoa käyttämällä voidaan luoda objekteja painikkeille, potentiometreille ja multipleksoiduille painikkeille, jotka sisältävät data -arvoja, jotka sisältävät muistiinpanon numeron, ohjausarvot, nuotin nopeuden, MIDI -kanavan numeron jne. MIDI.h -kirjasto mahdollistaa MIDI I/O -yhteyden Arduinon sarjaportit, jotka puolestaan ottavat tiedot ohjainobjekteista, muuntavat ne MIDI -viesteiksi ja lähettävät viestit mihin tahansa midi -liitäntään.
Käsikirjoituksen tyhjä asennusosa alustaa kaikki kanavat pois päältä ja käynnistää myös sarjayhteyden 115200 baudilla, nopeudella nopeammin kuin MIDI -signaalit vaihdetaan.
Pääsilmukka vie olennaisesti näppäinryhmät ja multipleksoidut painikkeet ja suorittaa silmukan, joka tarkistaa, onko painiketta painettu tai vapautettu, ja lähettää vastaavat datatavut midi -käyttöliittymään. Potentiometrin silmukka tarkistaa potentiometrin asennon ja lähettää vastaavat jännitteen muutokset takaisin midi -rajapintaan.
Vaihe 5: Asennus
Kun käsikirjoitus on ladattu Arduinolle, seuraava vaihe on kytkeä ja toistaa. On kuitenkin pari vaihetta, ennen kuin sitä voidaan käyttää.
OSX: ssä Apple sisälsi ominaisuuden luoda virtuaalisia midi -laitteita, joita voidaan käyttää Macin Audio Midi Setup -sovelluksen kautta. Kun uusi laite on luotu, karvatonta MIDI: tä voidaan käyttää sarjayhteyden luomiseen Arduinon ja uuden virtuaalisen midi -laitteen välille. Sarjaliitäntä Arduinosta karvattoman MIDI: n kautta toimii komentosarjan tyhjäasetusosassa määritellyllä baudinopeudella, ja se on asetettava vastaavaksi Karvattomissa MIDI -asetuksissa.
Testaustarkoituksiin käytin Midi Monitoria tarkistaakseni, onko lähetetty oikeita tietoja sarja-MIDI-yhteyden perusteella. Kun olen päättänyt, että kaikki painikkeet lähettivät oikeita tietoja oikeiden kanavien kautta, asetin MIDI -signaalin reitittämään Ableton Live 9: ään MIDI -tulona. Abletonissa pystyin kartoittamaan viipaloidut ääninäytteet kullekin painikkeelle ja toistamaan jokaisen näytteen.
Suositeltava:
Rakenna Arduino MIDI -ohjain: 5 vaihetta (kuvilla)
Rakenna Arduino MIDI -ohjain: Hei kaikki! Tässä ohjeessa näytän sinulle, miten voit rakentaa oman Arduinolla toimivan MIDI -ohjaimen. MIDI tarkoittaa Musical Instrument Digital Interface ja se on protokolla, jonka avulla tietokoneet, soittimet ja muut laitteet voivat kommunikoida
Arduino MIDI -ohjaimen rakentaminen: 9 vaihetta (kuvilla)
Arduino MIDI -ohjaimen rakentaminen: Tämä ohje on alun perin julkaistu blogissani 28. kesäkuuta 2020. Nautin elektroniikan sisältävien asioiden rakentamisesta ja olen aina halunnut rakentaa jotain Arduinon avulla. MIDI -ohjain
Arduino MIDI -rummut: 6 vaihetta
Arduino MIDI -rummut: Oletko koskaan miettinyt rumpujen oppimista, mutta sinulla ei ole varaa rumpusettiin tai sinulla ei ole tarpeeksi tilaa rumpusetin säilyttämiseen
Tehokkaampi Arduino-UNO, Massduino-UNO: 9 vaihetta
Tehokkaampi Arduino-UNO, Massduino-UNO: Mitä Massduino on? Lähes kaikki Arduino -koodit voivat olla
MIDI 5V LED -nauhavalo -ohjain Spielatronille tai muulle MIDI -synteesille: 7 vaihetta (kuvilla)
MIDI 5V LED-nauhavalo-ohjain Spielatronille tai muulle MIDI-syntetisaattorille: Tämä ohjain väläyttää kolmivärisiä LED-nauhavaloja 50 mS per muistiinpano. Sininen G5-D#6, punainen E6-B6 ja vihreä C7-G7. Ohjain on ALSA MIDI -laite, joten MIDI -ohjelmisto voi lähettää LED -valolle samanaikaisesti MIDI -syntetisaattorilaitteen kanssa