Orodha ya maudhui:

MIDI nyingine kwa Sanduku la CV: Hatua 7 (zilizo na Picha)
MIDI nyingine kwa Sanduku la CV: Hatua 7 (zilizo na Picha)

Video: MIDI nyingine kwa Sanduku la CV: Hatua 7 (zilizo na Picha)

Video: MIDI nyingine kwa Sanduku la CV: Hatua 7 (zilizo na Picha)
Video: 🇧🇷 ДНЕВНЫЕ БОРДЕЛИ РИО // ЗАБРАЛ ЛЬВИЦУ С ПЛЯЖА ДОМОЙ 🇧🇷 БРАЗИЛИЯ РИО ДЕ ЖАНЕЙРО 2024, Julai
Anonim
MIDI nyingine kwa Sanduku la CV
MIDI nyingine kwa Sanduku la CV

MIDI nyingine hadi sanduku la CV ni mradi niliotengeneza wakati Korg MS10 ilibisha mlango wangu na ilifanyika kwenye studio yangu. Kwa kuwa usanidi wangu unahusiana sana na MIDI kugeuza na kusawazisha vyombo vyote, wakati nilinunua MS10 shida ya kwanza niliyopaswa kukabili ni jinsi ya kutekeleza udhibiti kama huo.

Korg MS20 / 10 sio synths rahisi zaidi kutekeleza MIDI kwa: kwanza kabisa, wanategemea udhibiti wa Hz / V (uwiano sawa kati ya voltage ya kudhibiti na mzunguko wa kumbuka), badala ya oct / V (1V kwa octave); pili, ili kuchochea noti lazima utume ishara hasi ya lango na ufupishe pembejeo ardhini (S-Trig), sio ishara ya +5 V (V-trig).

Kuna suluhisho anuwai za kibiashara kudhibiti vifaa kama hivi leo (yaani Arturia Beatstep Pro, Korg SQ-1, Kenton Solo) lakini mimi ni mwanaharamu wa bei rahisi na hata euro 100 ni nyingi sana kwa kifaa "kisichosikika":).

Hapa tuko basi: wacha nikuonyeshe jinsi ya kujenga MIDI ya bajeti ya chini kwenye sanduku la CV kudhibiti / kugeuza lami ya pre-MIDI, lango, kasi na masafa ya cutoff na mtawala wa nje wa MIDI (Kinanda, DAW, sequencer au chochote).

"Je! Kuhusu mini mpya ya MS20?"

Kama karibu kila mtu anajua, MS20 mpya ni kweli MIDI tayari: IN na kiunganishi cha miti 5 ya MIDI na IN / OUT na kontakt USB.

"Kwa hivyo, ikiwa nina mini ya MS20 jambo hili halina maana!"

Kweli, hapana. Mini ya MS20 kutambua tu kumbuka kwenye / kuzima ujumbe na kibodi sio kasi ya kasi. Hakuna njia ya kushinda hii na kibodi ya mavuno ya MS10 / 20 au mini, lakini na sanduku la midi na kibodi nyeti ya kasi wewe ni dhahabu. Kwa kuongezea, na kisanduku cha MIDI unaweza kugeuza cutoff ya chujio (au parameter yoyote inayoweza kudhibitiwa kwa voltage) au iwe imewekwa na noti inayoingia ya MIDI kwenye kasi. Tena, kituo tu cha MIDI cha MS20 kinachojibu ni kituo 1. Na kisanduku hiki unaweza kushinda kikomo hiki pia.

"Je! Ikiwa nina synth ya Oktoba / V?"

Hakuna shida! Nambari niliyoandika ni sawa na synthesizers ya Oct / V (haijapimwa, lakini nina hakika hiyo itafanya kazi nje ya sanduku;)).

Hatua ya 1: !! Kumbuka ya Tahadhari - Kanusho !

Vifaa vyako ni vya thamani sana na haipaswi kutumiwa kufanya majaribio.

Kuchezea umeme kunaweza kuharibu sana vifaa vyako au kujidhuru.

Siwezi kuwajibika kwa uharibifu wa vifaa / vifaa vyako au hata wewe mwenyewe unatoka kwa programu yoyote au mipango au habari au viungo ambavyo niliripoti katika hii inayoweza kufundishwa.

Umeonywa!

Hatua ya 2: Uhandisi vifaa

Arduino inakuja wakati unashughulika na miradi kama hii. Kuwepo kwa Jumuiya kubwa na maktaba nzuri sana ambayo hutumia karibu kila kazi ya kawaida hufanya iwe chaguo sahihi. Hapa bodi itapangwa kwa njia ambayo itasoma data zinazoingia za MIDI na kisha itatuma voltages zinazofaa kuendesha:

- Piga, kwa kubadilisha pwm kuwa voltage ya analog ili kuendesha VCO kupitia dijiti kwa kibadilishaji cha analog (DAC)

- Kasi, kwa kuchuja pwm ili kuendesha VCA na chujio rahisi cha RC

- Filter Cutoff Frequency, kwa kuchuja pwm pato ili kuendesha VCF na kichujio rahisi cha RC

- Lango, moja kwa moja kutoka kwa dijiti ikiwa kuna V-trig (weka 1Kohm katika safu na pato ili kupunguza mtiririko wa sasa) au kwa swichi rahisi ya transnor ya pnp kutoka kwa dijiti (angalia skimu iliyoambatanishwa na hatua ya skimu).

Arduino haina uwezo wa kutoa voltages thabiti moja kwa moja, lakini 0 / + 5 V kunde zilizo na vipindi anuwai (PWM). Tuko katika hitaji la waongofu wa dijiti kwa analog (DAC) kwa mtu anayemiminika. Vichungi vya RC ni DAC rahisi zaidi ninaweza kufikiria. Kichujio cha RC kinafanywa vizuri kwa kipaza sauti na kichungi kinachodhibitiwa na voltage (VCA na VCF). Vichungi vya RC vimeundwa ili kusababisha mzunguko wa cutoff <20Hz (masikika ya chini kabisa).

Nilijaribu na uwezo mdogo wa polarized capacitors na nikamalizika na uwezo wa 0.1uF kuwa bora zaidi. Ilijaribiwa vizuri kwenye MS20 MKII.

Kwa bahati mbaya, hatuwezi kutegemea kichujio cha RC kuendesha oscillator inayodhibitiwa na voltage (VCO) kwani haingekuwa sahihi kutafakari (kwa kiwango cha Hz / V, mwisho wa chini semitones mbili za adiacend zinatofautiana chini ya 0.02V; kwa V / oct semitoni mbili za kupendeza hutofautiana kwa 0.083 V); tutatumia IC DAC (MPC4725) kwa hili.

Mipaka inayojulikana

Kupunguza voltage ya gari hadi 5V (voltage ya pato la Arduino), safu kamili ya 0 hadi 5V imefunikwa kwa kasi; cutoff imefunikwa nusu (-5V hadi + 5V); anuwai ya VCO imefunikwa kwa sehemu kuwa katika Hz / V voltage ya 8 V itahitajika kufikia 440 Hz A4. Kwa kikomo cha pato la 5V tunaweza kuweka oscillator hadi masafa ya D4 katika Hz / V.

Hatua ya 3: Orodha ya Vipengele

Orodha ya Vipengele
Orodha ya Vipengele
Orodha ya Vipengele
Orodha ya Vipengele
Orodha ya Vipengele
Orodha ya Vipengele

Unahitaji:

1X Arduino UNO (au nano)

Bodi ya 1X MPC4725 DAC

Viunganishi vya mono 4X 1/8 "au 1/4"

Kontakt 1X MIDI

1X 6N138 optocoupler

1X 1N4148 diode

Kontena 1X 220 ohm 1/4 W

Kontena 1X 470 ohm 1/4 W

1X 10K ohm 1/4 kipinzani

Kinga ya 4X 1K ohm 1/4 W

2X 0.1 uF capacitor

1X BC547 pnp transistor (ikiwa S-trig)

Sanduku la 1X ABS (angalau 55 x 70 x 100 mm)

… Na ni dhahiri ubao wa mkate au ubao wa mbao, chuma cha solder, waya ya solder na nyaya (mita 2 za 28 AWG zinapaswa kutafutwa).

Kumbuka kuwa kwenye picha zilizo juu ya mfano wangu hupanda kofia 100 za elektroni, lakini ni polepole sana kwa sababu ya wakati wa malipo ya uwezo. Uwezo wa 0.1uF ni chaguo sahihi.

Nilitumia kiunganishi cha ziada kusambaza nguvu kwa arduino yangu; sio lazima kuwezeshwa kudhibiti microcontroller moja kwa moja kupitia kontakt mini ya USB.

Hatua ya 4: Uunganisho / skimu

Uunganisho / Skimu
Uunganisho / Skimu
Uunganisho / Skimu
Uunganisho / Skimu
Uunganisho / Skimu
Uunganisho / Skimu

MIDI NDANI

Mzunguko wa MIDI IN ni rahisi na umeelezewa vizuri kwenye wavu. Chukua HII inayoweza kufundishwa kwa MIDI na Arduino na Amanda Gassaei, kwa mfano. Nilifanya mpango wa nth juu ya jambo hilo hata hivyo.

Ona kuwa nimeongeza ubadilishaji kwenye mpango wa MIDI IN (badilisha 1): hii ni muhimu wakati wa kupakia mchoro mpya kwa Arduino kwa sababu opto inaingiliana na laini ya RX hata bila ujumbe wa midi zinazoingia. Lazima ufungue swichi kabla ya kupakia mchoro wako au IDE itashindwa kupakia mchoro mpya.

Mwishowe unaweza kurekebisha mchoro ili kutumia mawasiliano ya programu ya serial.

Kichujio cha DAC, RC, Synthesizer

Uunganisho wa vichungi vya DAC, RC na Synth (lami, lango na kasi) zinaonyeshwa kwenye mchoro ulio juu. Nilichukua kumbukumbu ya jopo la kiraka la Korg MS20, lakini nilijaribu kila kitu kwenye MS10 pia. Uunganisho wa moja kwa moja wa kasi ya kasi kwa VCA "faida ya kwanza" ya kiraka haina athari (lazima nichimbe jambo hili zaidi) lakini ikiwa utaiunganisha na sehemu ya "Jumla" na upandishe sufuria zako za nje (MG / T. EXT), utasikia tofauti nzuri za sauti kama kazi ya kasi ya kumbuka.

Hesabu zangu (na mfano wangu pia) hazitumii kipingamizi cha sasa katika pato la DAC, lakini kila wakati ni wazo nzuri kuweka moja ili kuhakikisha maisha marefu kwa nyaya zako. Kontena la 220 ohm litatekelezwa.

Ona kuwa katika skimu zilizo juu ya kofia 100 za elektroniki za F zimeripotiwa, lakini ni polepole sana kwa sababu ya wakati wa malipo ya uwezo. Sio polarized, kofia 0.1uF ni chaguo sahihi.

Lango nje

Ikiwa utafuata synth inayoambatana na ishara za V-Trig (voltage trigger), kipingaji cha safu ya 1k ohm kupunguza mtaro wa sasa kitatosha; ikiwa kuna S-Trig (switch trigger) synth, unaweza kutumia mzunguko rahisi wa kubadili PNP (angalia mpango ulioambatanishwa).

Hatua ya 5: Programu

Programu
Programu

Nilijaribu kuweka mchoro wazi na "usome" iwezekanavyo.

Nilifanya kazi kwenye karatasi rahisi ya calc nilipata HAPA kupata Voltage Vs Kumbuka # curve na kutumia moja kwa moja equation katika microcontroller. Mlinganisho umeonyeshwa kwenye grafu iliyo juu. Nilitumia C2 kama kidokezo cha kumbukumbu kupata uhusiano wa Arp / Korg unaolingana na Voltage Vs (C0 - 0.25V, C1 - 0.5V, C2 - 1V, C3 - 2V, C4 - 4V, C5 - 8V na kadhalika).

Ilinibidi kufafanua anuwai ya kuchezea ili kupata tuning nzuri… chukua muda wako kupata maadili sahihi. Tuner ni muhimu.

Tutaongeza mzunguko wa pwm wa Timer / Counter ili kupunguza voltages pato (kama rahisi kama laini ya nambari).

Ili kuweka msimbo msikivu kwa ka zinazoingia, nambari inategemea sana kazi za kurudi nyuma.

Wewe ni katika haja ya Sparkfun "Adafruit_MCP4725.h" na Arobaini na Saba Athari / maktaba ya "MIDI.h" ya Francois Best! (Shukrani nyingi kwa watu hawa: bila juhudi zao mradi huu hauwezi kutekelezwa!).

Nitafikiria unayo Arduino IDE tayari kwenye PC yako na unajua jinsi ya kupakia mchoro kwenye bodi yako ya Arduino.

Mimi sio kificho katika maisha halisi, kwa hivyo kuna uwezekano kwamba mchoro unaweza kuandikwa kwa njia bora. Niko wazi kwa maoni (mimi hujifunza kila kitu nikiangalia nambari ya nambari;))

Vidokezo vya ziada vimeandikwa katika nambari hapa chini. Sakinisha maktaba mbili, fungua nambari iliyoambatishwa kwenye IDE yako, unganisha bodi yako, chagua aina ya bodi na upakie.

Hatua ya 6: Utatuzi wa matatizo

Hata kama mradi uko chini, kuna mambo mengi ambayo yanaweza kwenda vibaya. Ikiwa unapata shida wakati unajaribu kuunda MIDI yako mwenyewe kwenye sanduku la CV, fuata hatua hizi:

1. Hakikisha kwamba Arduino anapokea kwa usahihi ujumbe wa MIDI

Angalia kituo cha pato kibodi yako au DAW au Sequencer inatoa ujumbe wa MIDI kwenda. Arduino anasikiliza kituo 1 kwa chaguo-msingi. Pakia "TEST_MIDI_IN.ino" ili usome ujumbe unaoingiaON.

2. Angalia mara mbili wirings yako

… Au bora zaidi: angalia mara tatu! Weka wakati wako kwa hili.

3. Angalia anwani na pato la DAC

DAC inaweza kuwekwa kupokea data kwenye anwani tofauti na ile niliyoweka kwenye mchoro. Angalia anwani kwa kutumia "I2C_scanner.ino". Ikiwa hitilafu ya "hakuna kifaa kilichopatikana" itatokea, angalia wiring yako ya DAC (pembejeo za SDA na SCL ni tofauti kwenye bodi tofauti za Arduino!). Ikiwa una oscillocope (hata hizo euro 15 za oscilloscopes za dijiti ni nzuri kutafakari… na inafurahisha kuchezea!) Unaweza kuangalia matokeo ya DAC yako kwa kupakia mfano wa jenereta ya mawimbi ya pembetatu iliyojumuishwa na usanikishaji wa maktaba ya DAC.

Kumbuka kwamba wakati optocoupler imeunganishwa na uingizaji wa RX wa bodi yako ya arduino, hautaweza kupakia mchoro mpya !! Weka swichi (inaweza kuwa jumper rahisi) kabla ya pini ya RX.

Mengi ya michoro hii ya majaribio sio yangu au angalau kulingana na nyenzo zilizopo mkondoni.

Jambo hili linasikika nje kwangu !?

Hili sio suala halisi: equation inayotokana na udhibiti wa Hz / V ni "bora". Kuhama kutoka kwa tabia bora kunaweza kuongezeka kutoka kwa + 5V unayotoa sio 5.000V, kutoka kwa DAC na kutoka kwa chombo chenyewe. Ili kutatua lazima uchukue hatua ya synth tune / faini tune potentiometer na "voilà" udhibiti wa MIDI uliyopangwa vizuri;)

Hatua ya 7: Viungo muhimu

en.wikipedia.org/wiki/CV/gate

www.instructables.com/id/Send-and-Receive-…

www.songstuff.com/recording/article/midi_me…

pages.mtu.edu/~suits/NoteFreqCalcs.html

espace-lab.org/activites/projets/en-arduin …….

learn.sparkfun.com/tutorials/midi-shield-h …….

provideyourown.com/2011/analogwrite-conver…

www.midi.org/specifications/item/table-3-c…

arduino-info.wikispaces.com/Arduino-PWM-Fr…

sim.okawa-denshi.jp/en/PWMtool.php

Ilipendekeza: