Talaan ng mga Nilalaman:
- Hakbang 1: Pagkontrol sa VS1053
- Hakbang 2: Paggamit ng Sonars
- Hakbang 3: Pagdaragdag ng isang Display
- Hakbang 4: Ang System System
- Hakbang 5: Sama-sama na itong paghihinang
- Hakbang 6: Pagdaragdag ng isang PSU
- Hakbang 7: Pagdaragdag ng Mga Nagsasalita
- Hakbang 8: Docking Station
- Hakbang 9: Paggawa ng Kaso
- Hakbang 10: Pag-unlad sa Hinaharap
Video: MIDI Sonar "Theremin": 10 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Ito ay isang instrumentong pangmusika na gumagamit ng dalawang sonar distansya sensor upang makontrol ang pitch at kalidad ng mga tala. Ito ay hindi talaga isang Theremin syempre ngunit ang "Theremin" ay naging pangkaraniwang term para sa mga instrumentong tinugtog sa pamamagitan ng pagwagayway ng iyong mga kamay sa paligid.
Mayroon itong built-in na synthesizer ng MIDI, amplifier at speaker. Ang mga tala ng musikal ay ginawa ng isang MIDI chip - ang VS1053 - na mayroong 127 mga tinig (ibig sabihin, magkakaibang mga instrumento). Mayroon itong mataas na antas ng polyphony (hanggang sa 64) upang maaari itong maglaro ng mga solong tala o chord.
Kinokontrol ng iyong kanang kamay ang tala na nilalaro. Sa "discrete" mode ang puwang sa kanan ay nahahati sa "bins". Habang pumapasok ang iyong kamay sa isang basurahan, nagsisimula ang tala para sa basurang iyon. Kapag iniwan mo ang basurahan, maaaring huminto ang tala (hal. Isang organ) o natural na mamatay (hal. Isang piano).
Sa "tuloy-tuloy" na mode ang puwang sa kanan ay tumutukoy sa isang patuloy na variable na pitch - tulad ng orihinal na Theremin. Nagsisimula ang tala kapag ang iyong kamay ay pumasok sa puwang at humihinto kapag iniwan mo ang puwang.
Kinokontrol ng iyong kaliwang kamay ang kalidad ng tala na nilalaro. Maaari nitong makontrol ang dami, tremolo, vibrato, pitch-bend, reverb, atbp.
Ang isang maliit na LCD screen ay may isang menu na nagbibigay-daan sa iyo upang piliin ang kasalukuyang instrumento, ang pagpapaandar ng kaliwang kamay, ang sukat (o "key") ng kanang kamay, vibrato, tremolo, atbp. Maaari kang makatipid at mag-load ng iba't ibang "Mga Pag-set up "at lumipat sa pagitan ng mga ito nang mabilis sa panahon ng isang pagganap.
Ang buong instrumento ng MIDI "Theremin" ay nagpapatakbo ng stand-alone na may sariling speaker at rechargeable na baterya.
Kung kokopyahin mo ang aking build, kakailanganin mo ng isang Arduino Nano (£ 1.50), isang module na VS1053 (£ 4.50), isang 1.44 ST7735 LCD display (£ 3.50), dalawang mga module ng HC-SR04 (£ 1 bawat isa) at ilang resistors. Kakailanganin mo rin ang ilang mga pinalakas na speaker at marahil isang lithium cell at isang PSU ngunit ang mga detalye ay nakasalalay sa kung paano ka magpasya na buuin ito. Nakuha ko ang lahat ng mga karagdagang iyon mula sa mga benta ng car-boot at charity shop. Dagdag ka kakailanganin natin ang karaniwang elektronikong kagamitan sa pagawaan.
Hakbang 1: Pagkontrol sa VS1053
Pinili ko ang module na VS1053 na ipinakita sa larawan. (Tandaan ang dalawang mga regulator ng SOT223, ang dalawang jack sockets at ang posisyon ng konektor.) Maghanap sa eBay, Alibaba o ang iyong paboritong tagapagtustos para sa isang module na VS1053 na ganoon ang hitsura. Magagamit ang mga ito mula sa Aliexpress dito at dito.
Binili ko ito ilang taon na ang nakakalipas at hindi na ito lilitaw na magagamit sa eBay, sa Alibaba lamang. Ang isang pulang bersyon ng PCB ay magagamit na ngayon sa eBay. Lumilitaw na magkapareho ito sa paggana ngunit ang pinout ay iba kaya kakailanganin mong ayusin ang aking mga iskema at layout. Hindi ko pa ito nasubukan. Sa talakayan (sa ibaba) maaari kang makahanap ng mga tagubilin sa kung paano magdagdag ng isang risistor sa pulang PCB upang paganahin ang "live" na MIDI. O maaari kang magpadala ng mga karagdagang utos sa panahon ng pag-setup upang paganahin ito.
Ang VS1053 ay isang mahusay na maliit na tilad ngunit sa halip kumplikado. Gumagamit lang ako ng MIDI na bahagi nito. Posibleng kontrolin ang VS1053 sa isang serial interface ngunit ginagamit ko ang SPI bus dahil mas madali ito sa isang Arduino Nano. Ang anumang byte na ipadala mo sa SPI bus ay itinuturing bilang isang utos ng MIDI.
Mahahanap mo ang mga listahan ng mga utos ng MIDI sa web. Ang VS1053 ay tumutugon sa ilan ngunit hindi lahat sa kanila. Ipinapakita ng programang Miditheremin0.exe ang mga alam kong gumagana.
Maaari mong i-download ang VS1053 data sheet mula sa web. Ito ay isang malaking dokumento at mahirap magpatuloy. Ang seksyon na "8.9 Mga Sinusuportahang MIDI Format" ay halos lahat ng sinasabi nito tungkol sa MIDI. Ang seksyon na "10.10 Real-Time MIDI" ay nagsasalita tungkol sa paggamit ng GPIO0 at GPIO1 upang paganahin ang MIDI ngunit ang lupon na hindi ko hinihingi ng anumang espesyal na pagpapagana. Maaari mo ring i-download ang isang listahan ng mga mensahe sa MIDI (hindi lahat ay suportado ng VS1053).
I-wire ang module na VS1053 sa isang Arduino Nano tulad ng ipinakita at i-upload ang INO file sa Arduino. Gumamit ako ng isang solderless-breadboard. Wala akong larawan nito sa yugtong ito ngunit makikita mo ang breadboard kasama ang iba pang mga bahagi sa isang hakbang sa ibaba.
Ang INO sketch ay tumatanggap ng isang byte mula sa PC sa serial line at ipinapadala ang byte sa VS1053. Ito ay isang napaka-simpleng programa na nagbibigay-daan sa iyo upang subukan ang VS1053. Ikonekta ang output jack socket sa mga headphone o isang computer speaker.
Ang programa ng Windows Miditheremin0.exe (i-download ang Step1.zip mula sa github) ay nagpapadala ng mga utos sa VS1053. I-click ang pindutang "90 note vel" upang maglaro ng isang tala. O maaari kang sumulat ng iyong sariling programa sa Windows. O gumamit ng isa sa maraming mga programa ng terminal na magagamit sa web.
Ang module na VS1053 ay may mga sumusunod na pin:
- ang SPI bus ay mayroong karaniwang MISO, MOSI at SCLK
- kung mababa ang XRST, nag-reset ang maliit na tilad
- Ang XDCS ay walang ginawa sa SPI mode kaya itali ito sa XCS
- Ang XCS ay Chip Select
- Sasabihin sa iyo ng DREQ kapag handa na ang maliit na tilad para sa isang bagong utos.
Ang XCS ay dapat na mababa habang nagpapadala ka ng isang byte; tapos mataas. Sa ganoong paraan, sigurado ka na na-synchronize mo ang unang piraso ng bawat byte. Sinasabi sa iyo ng pagbabasa ng DREQ na ang maliit na tilad ay handa nang makatanggap ng isang bagong utos.
Matapos magpadala ang Arduino ng isang byte, dapat itong magpadala ng isang dummy byte upang mai-toggle ang orasan at payagan ang VS1053 na magpadala ng isang byte pabalik bilang tugon. Ipinapakita sa iyo ng pagpapaandar ng SPItransfer () kung paano.
Ang pulang module na magagamit sa eBay ay may kasamang slot ng SD card kaya't mayroong ito isang pares ng mga sobrang pin. Wag mo silang pansinin.
Ngayon ay tiwala ka na maaari mong paganahin ang VS1053, gagawin namin itong higit pa sa isang instrumentong pangmusika.
Hakbang 2: Paggamit ng Sonars
I-wire ang mga module ng HC-SR04 sa Arduino Nano tulad ng ipinakita at i-upload ang INO file sa Arduino.
Pansinin sa iskema na ang DC3 - ang decoupling capacitor para sa mga module ng HC-SR04 - ay dapat na konektado malapit sa mga module ng HC-SR04. Kinukuha nila ang isang kasalukuyang kapag nagpapadala sila kung aling DC3 ang tumutulong na magbigay.
Sa yugtong ito ng proyekto, nagpapadala pa rin ang Windows PC ng mga utos sa VS1053 ngunit ang VS1053 ay kinokontrol din ng mga HC-SR04 sonar sensor (i-download ang Step2.zip mula sa github).
Ang mga bagong utos ay nagsisimula sa 0xFF at binibigyang diin ng Arduino sketch (sa halip na maipadala nang diretso sa VS1053). Ang mga hindi "FF-command" byte ay ipinadala sa VS1053.
Mayroong mga utos na baguhin ang instrumento, baguhin ang sukatan, magdagdag ng vibrato at tremolo, atbp. Ang programa ay maaaring patakbuhin sa "discrete" mode kung saan may magkakahiwalay na mga tala (tulad ng isang piano) o sa "tuloy-tuloy" na mode kung saan ang isang solong tala ay baluktot pataas at pababa (tulad ng isang theremin).
Ginagawa nitong maayos ang lahat ng gagawin ng panghuling instrumento ngunit kinokontrol ito ng isang PC.
Pinipili ng tamang HC-SR04 sonar sensor ang pitch ng tala na nilalaro. Sa "discrete" mode ang puwang sa kanan ay nahahati sa "bins". Habang pumapasok ang iyong kamay sa isang basurahan, nagsisimula ang tala para sa basurang iyon. Kapag iniwan mo ang basurahan, maaaring huminto ang tala (hal. Isang organ) o natural na mamatay (hal. Isang piano). Habang pumapasok ang iyong kamay sa isang basurahan, ang basurahan ay lumalawak nang bahagya upang hindi ka ma-jitter sa gilid nito.
Ibinabalik ng pagpapaandar ng GetSonar () ang oras na ginugol hanggang sa unang echo. Hindi nito pinapansin ang napakabilis na mga pag-echo (tagal ng <10) na kung saan ay naiulat ng HC-SR04 kung minsan. Kung walang natanggap na echo ng maxDursyon, ibabalik nito ang maxDuration. Ang tagal ay hindi sinusukat sa anumang partikular na mga yunit - ito ay isang numero lamang.
Sa Discrete mode, ang tagal ay unang nasala upang alisin ang paminsan-minsang mga dropout (kapag walang natanggap na echo). Ipinagpapalagay na ang kamay ay naroroon lamang pagkatapos ng 10 mga sample ng maxDuration ay natanggap. Pagkatapos ang tagal ay nasala gamit ang isang Median filter. Ang mga median filter ay mahusay sa pag-aalis ng "impulsive" na ingay (ibig sabihin paminsan-minsan na mga spike). Ginamit ang na-filter na tagal upang pumili ng isang basurahan.
Sa Patuloy na mode, ang tagal ay muling nasala upang alisin ang paminsan-minsang mga pag-dropout. Pagkatapos ay makinis ito gamit ang isang exponential filter. Ginamit ang na-filter na tagal upang itakda ang dalas ng tala gamit ang "pitch bend".
Hakbang 3: Pagdaragdag ng isang Display
Ang display ay isang 1.44 kulay na TFT LCD screen na may ST7735 controller, 128x128 pixel. Maraming magagamit na mga screen sa eBay, halimbawa mas gusto mong paunlarin ang iyong instrumento gamit ang isang mas malaking touch-screen. Hindi ko ginamit ang ST7735 controller at nais na subukan ito.
Nakuha ko ang akin sa supplier na ito. Ang parehong module ay nabili nang malawak sa eBay - kumuha lamang ng isa na mukhang pareho sa larawan.
Ang LCD ay may mga sumusunod na pin:
- Lupa ng GND
- VCC 3.3V
- SCL SPI bus SCLK
- SDA SPI bus MOSI ng Arduino
- RES reset
- DC data / utos
- CS chip select
- BL ilaw sa likod
Tumatakbo ang module sa 3.3V kaya't hindi mo ito dapat ikonekta nang direkta sa iyong 5V Arduino. Gumamit ako ng 1k resistors upang mahulog ang boltahe. Iyon ay hindi magandang kasanayan (sa pangkalahatan, dapat gumamit ang isang potensyal na divider o isang boltahe-dropper chip) ngunit gumagana nang perpekto sa circuit na ito. Tinatamad ako.
Ang display ay pinalakas ng 3.3V na ibinigay ng Arduino. Ang regulator ng Arduino ay tila sapat na masaya.
Napakabait na pag-publish ng adafruit ng isang aklatan ng ST7735 at maraming iba pang mga aklatan ang magagamit sa Github at sa iba pang lugar. Sinubukan ko ang ilan at hindi nagustuhan ang alinman sa mga ito. Ang ilan ay hindi gumana at lahat ay malaki. Sumusulat ka ng isang Arduino sketch na gumuhit ng isang linya at ilang teksto at nakita mo ang iyong memorya kung 75% ang buo. Kaya't nagsulat ako ng aking sariling silid-aklatan.
Maaaring ma-download ang library ng SimpleST7735 (i-download ang Step3.zip mula sa github).
Mayroon itong karaniwang hanay ng mga utos ng pagguhit na halos kapareho ng lahat ng mga nasabing aklatan.
Ang ilan sa mga "mabilis" na aklatan na maaari mong i-download ay gumagamit ng mga espesyal na pag-loop ng tiyempo at nababagabag kapag iba pa, marahil mas mabagal, ang mga aparato ay ginagamit sa parehong bus. Ang SimpleST7735 ay nakasulat sa C sa halip na assembler kaya't hindi ito napakabilis na maaari ngunit mas portable at ibinabahagi nito ang SPI bus ng magalang sa iba pang mga aparato. Maaaring ma-download ang isang programa sa Windows na nagbibigay-daan sa iyo upang gumawa ng iyong sariling mga font at icon.
Maaari mong i-download ang data sheet ng ST7735 mula sa web. Kausapin mo ito ng
- itakda ang CS mababa
- itakda ang DC na mababa
- magpadala ng isang byte ng utos
- itakda ang DC mataas
- magpadala ng zero o higit pang mga byte ng data
- itakda ang CS mataas
Maaari mong makita kung paano ko ito ginagawa sa spiSend_TFT_CW () na function sa library. Ang mga byte ng data ay maaaring isang buong hilera ng mga pixel o isang setting para sa isang rehistro ng kontrol.
Ang pagpapaandar ng ST7735Begin () sa library ay nagpapakita sa iyo ng set ng inisyal na utos na napili ko. Maaaring gusto mong baguhin ang mga utos kung pipili ka ng ibang display na ST7735 (hal. Na may higit pang mga pixel) o nais ng ibang oryentasyon. Inaasahan kong madali ang aking code para makita mo kung paano magbago kung kailangan mo.
Ipinapakita ng eskematiko ang isang pindutan ng kontrol na "SW1" at isang foot-pedal SW2 ". Ang control button ay pipili ng iba't ibang" Mga Setup "(tingnan ang susunod na hakbang) o pipiliin ang Menu mode. Ang pedal ng paa ay opsyonal at pipiliin lamang ang iba't ibang mga Pag-set up - hindi ko nilagyan ng isang pedal ng paa ang aking sarili. Ang mga pag-set up ay kapaki-pakinabang sa panahon ng isang pagganap kapag nais mong mabilis na baguhin ang key o baguhin ang instrumento.
Hakbang 4: Ang System System
Ang Miditheremin3.ino Arduino sketch na ito ay nagdaragdag ng isang menu system sa MIDI Theremin at kinokontrol ang panghuling kumpletong instrumento.
Karaniwang tumatakbo ang MIDI Theremin sa "Play" mode. Pinipili ng iyong kanang kamay kung aling tala at iyong kaliwang kamay ang kumokontrol sa kalidad ng tala. Nagpapakita ang LCD ng isang piano keyboard na may naka-highlight na kasalukuyang tala.
Kung pinipigilan mo ang pindutan ng kontrol para sa isang segundo, ang programa ay papunta sa mode na "Menu". Sa Menu mode, kung pipigilin mo ang control button para sa isang segundo, ang programa ay babalik sa "Play" mode.
Ang menu ay may isang istraktura ng puno na may pangunahing-item at sub-item. Ang kasalukuyang item sa menu ay naka-highlight. Inilipat mo ang pagpipilian pataas / pababa sa pamamagitan ng kaliwang sonar. Ang sub-menu para sa isang pangunahing-item ay pinalawak lamang kapag ang pangunahing-item ay napili.
Napili ang isang sub-menu, kapag na-click mo ang pindutan, ang halaga ng item na iyon ay mai-highlight. Ang kaliwang kamay ngayon ay nagdaragdag o nagpapabawas sa halaga. I-click muli ang pindutan upang bumalik sa pagpili ng mga sub menu.
Sa Discrete mode, ang menu tree ay
-
Instrumento
- 0: Grand Piano
- Ipagpalit ang Mga Kamay: normal
-
Kanang kamay
Mode: discrete
-
Kaliwang kamay
- Mode: Vibrato
- Max Lalim: 10
-
Kaliskis
- Kaliskis: pangunahing Heptatonic
- Mga Octave: 2
- Pinakamababang tala: 60 C
-
Chord
- Chord: Pangunahing triad
- Pagbaligtad: 0
- Polyphony: 1
-
Tremolo
- Laki: 20
- Panahon: 10
-
Vibrato
- Laki: 20
- Panahon: 10
Ang Instrumento ay maaaring "Grand Piano", "Church Organ", "Violin", atbp. Mayroong 127 mga instrumento sa VS1053 na marami sa mga tunog na magkatulad at marami ang mga hangal tulad ng "gunshot". Pinapayagan ka ng sub-menu ng Swap Hands na ipagpalit ang mga pagpapaandar ng kaliwa at kanang mga kamay - marahil mas gusto mo ito sa ganoong paraan o marahil nais mong harapin ng mga nagsasalita ang madla.
Ang Tamang Kamay ay maaaring maging "Discrete" o "Continuous". Tingnan sa ibaba para sa menu na "tuloy-tuloy".
Maaaring makontrol ng Kaliwang Kamay ang "Dami", "Tremolo", "Vibrato", "PitchBendUp", "PitchBendDown", "Reverb", "Polyphony" o "ChordSize".
Halata ang "Volume". Ang "Tremolo" ay isang mabilis na pagkakaiba-iba sa dami; kinokontrol ng kaliwang kamay ang laki ng pagkakaiba-iba; ang panahon ay itinakda ng ibang menu item. Ang "Vibrato" ay isang mabilis na pagkakaiba-iba sa tono; kinokontrol ng kaliwang kamay ang laki ng pagkakaiba-iba; ang panahon ay itinakda ng ibang menu item. Ang "PitchBendUp" at "PitchBendDown" ay nagbabago ng tunog ng tala na nilalaro; kinokontrol ng kaliwang kamay ang laki ng liko. Ang "Reverb" ay hindi nakakaintindi sa VS1053; kinokontrol ng kaliwang kamay ang laki ng reverb. Kinokontrol ng "Polyphony" kung gaano karaming mga tala ang naglalaro nang sabay-sabay hanggang sa maximum na itinakda ng menu ng Polyphony (tingnan sa ibaba). Ang "ChordSize" ay nangangahulugang kinokontrol ng kaliwang kamay kung gaano karaming mga tala ng isang chord (tingnan sa ibaba) ang pinatugtog.
Sa musika, ang isang "sukat" o "key" ay ang subset ng mga tala na iyong ginagamit. Halimbawa, kung pinaghigpitan mo ang iyong sarili sa Heptatonic scale ng C Major, papatugtog mo lamang ang mga puting tala ng piano. Kung pinili mo ang C # Major Pentatonic sa gayon gagamitin mo lang ang mga itim na tala (hal. Para sa mga tono ng Scottish folk).
Pinipili ng menu ng Scale kung aling mga tala ang tamang puwang ng kamay ay tumutugma at kung gaano karaming mga octaves ang takip ng kanang kamay na puwang. Kaya't kung pipiliin mo ang 1 oktaba ng E Major kung gayon ang kanang puwang ng kamay ay nahahati sa 8 mga talata na may E sa pinakamababang pitch at E isang oktaba sa itaas sa pinakamataas na pitch.
Pinapayagan ka ng menu ng Scale na pumili ng maraming mga hindi pangkaraniwang kaliskis na "di-Kanlurang musika" ngunit ipinapalagay nito na ang lahat ng mga tala ay mula sa pantay na keyboard - na kung paano gumagana ang MIDI, hindi mo madaling matukoy ang dalas ng isang tala. Kaya't kung nais mo, sabihin, ang sukat ng tone ng kapat ng Arab, magkakaproblema ka.
Pinapayagan ka ng sub-menu ng Octaves na pumili kung gaano karaming mga octaves ng scale na gusto mo. At sinabi ng Pinakamababang tala kung saan nagsisimula ang sukatan.
Karaniwan kapag pinatugtog ang isang tala, ang tala lamang ang pinapatunog. Pinapayagan ka ng menu ng Chord na maglaro ng maraming mga tala nang sabay-sabay. Ang isang Major Triad chord ay nangangahulugang 'i-play ang napiling tala kasama ang tala ng apat na mas mataas na semitones, kasama ang tala ng pitong semitones na mas mataas'.
Ang sub-menu ng Inversion ay nagbibigay sa iyo ng mga inversion ng chord. Nangangahulugan ito na inililipat nito ang ilan sa mga tala ng kuwerdas sa isang oktaba sa ibaba. Inililipat ng First Inversion ang lahat ng mga "extra" na tala sa isang oktaba, ang pangalawang Inversion ay gumagalaw ng isang mas kaunti sa mga sobrang tala pababa, at iba pa.
Sinasabi ng sub-menu ng Polyphony kung gaano karaming mga tala ang tumutugtog nang sabay-sabay; kung ang polyphony ay 1 pagkatapos kapag nagsimula ang isang tala, ang nauna ay tumigil; kung ang polyphony ay mas malaki kung gayon maraming mga tala ang maaaring mag-overlap - subukan ito sa organ ng simbahan.
Tinutukoy ng menu ng Tremolo ang lalim ng anumang tremolo at ang panahon ng siklo ng tremolo. Ang isang panahon ng "100" ay nangangahulugang isang ikot bawat segundo. Kung ang kaliwang kamay ay kumokontrol sa tremolo pagkatapos ay ang Sukat na sub-menu ay nakatago.
Tinutukoy ng menu ng Vibrato ang laki ng anumang vibrato at ang panahon ng cycle ng vibrato. Kung ang kaliwang kamay ay kumokontrol sa vibrato pagkatapos ay ang Sukat na sub-menu ay nakatago.
Pinapayagan ka ng programa na i-save at mai-load ang hanggang sa 5 magkakaibang "Mga Pag-set up". Ang isang Setup ay nag-iimbak ng lahat ng mga halagang maaari mong itakda sa menu. Kapag lumabas ka sa Menu mode, nai-save ang kasalukuyang pag-setup. Ang mga pag-set up ay nai-save sa EEPROM.
Sa Play mode, ang pag-click sa mga pagbabago sa pindutan sa susunod na pag-set up. Kung pinipigilan mo ang pindutan para sa isang segundo, lilitaw ang menu. Ang pagpindot sa foot-pedal ay nagbabago din sa susunod na pag-set up; ang foot-pedal ay hindi kailanman pipiliin ang menu.
Sa Patuloy na mode, ang menu tree ay
-
Instrumento
- 0: Grand Piano
- Ipagpalit ang Mga Kamay: normal
-
Kanang kamay
Mode: tuloy-tuloy
-
Saklaw
- Mga bilang ng semitone: 12
- Gitnang tala: 60 C
-
Kaliwang kamay
- Mode: Tremolo
- Max Lalim: 10
-
Tremolo
- Laki: 20
- Panahon: 10
-
Vibrato
- Laki: 20
- Panahon 10
Pinipili ng menu ng Saklaw kung anong saklaw ng mga frequency ang tinutukoy ng kanang kamay: ang bilang ng mga sakop na semitone at ang gitnang tala.
Makokontrol lang ng Kaliwang Kamay ang "Dami", "Tremolo" at "Vibrato".
Hakbang 5: Sama-sama na itong paghihinang
Itinayo ko ang circuit sa stripboard. Hindi ko makita ang punto ng pagkuha ng isang PCB na ginawa para sa isang one-off sa 4 na resistors lamang ngunit napagtanto kong ang ilang mga tao ay hindi gusto ng stripboard.
Ang aking layout ng stripboard ay ipinapakita sa itaas. Ang apat na board - Arduino, VS1053, display at stripboard - ay bumubuo ng isang sandwich. Sa layout, ang balangkas ng Arduino ay dilaw, ang VS1053 ay asul, ang display ay berde at ang stripboard ay orange.
Ang mga linya ng cyan ay ang mga strip ng tanso ng stripboard - tiyaking inilalagay mo ang mga break kung saan kinakailangan. Ang mga pulang linya ay mga link sa bahagi ng bahagi ng stripboard o mga wire na pupunta sa ibang lugar.
Gumamit ako ng mga mahahabang pin para sa board ng VS1053 dahil nakatayo ito sa itaas ng Arduino. Ang mga pin sa malayong sulok ng display at VS1053 boards ay tumutulong na patatagin ang mga ito. Ang mga tumataas na butas ng mga module ay pinahiran upang maaari mong solder ang mga ito. Tiyaking hindi konektado ang iyong sa lupa - ang mga tumataas na butas ng aking mga module ay hindi.
Kung mayroon kang ibang VS1053 module o ibang display, maaari mong baguhin ang mga pin ng Arduino:
- Ang D2 hanggang D10 at A0 hanggang A5 ay maaaring magamit sa anumang pagkakasunud-sunod na gusto mo; i-update ang mga numero ng pin malapit sa pagsisimula ng INO sketch
- Ang D11, D12, D13 ay nakatuon sa SPI at hindi maitalaga muli
- Ang D0, D1 ay nakatuon sa serial I / O
- Ang A6, A7 ay hindi maaaring gamitin bilang mga digital na pin
Ang mga modyul na HC-SR04 ay nasa 90 ° sa bawat isa na konektado sa pamamagitan ng isang piraso ng stripboard. Ang pushbutton ay nasa pagitan nila. Walang alinlangan magkakaroon ka ng iyong sariling ginustong disenyo.
Kung magpasya kang magkaroon ng isang foot-pedal, ikonekta ito sa pamamagitan ng isang jack-socket.
Hakbang 6: Pagdaragdag ng isang PSU
Sinukat ko ang kabuuang kasalukuyang Arduino, VS1053 at ipinakita bilang 79mA. Ayon sa mga sheet ng data, ang Arduino ay 20mA, ang display ay 25mA, ang VS1053 ay 11mA at ang HC-SR04 ay 15mA bawat isa kapag "gumagana" - kaya't ang 80mA ay tila tungkol sa tama.
Ang display ay tumatagal ng 25mA at pinalakas mula sa 3V3 output ng Arduino na na-rate upang bigyan 50mA. Kaya't hindi dapat binibigyang diin ng circuit ang 3V3 regulator ng Arduino.
Maaari ba nating paandarin ang circuit sa pamamagitan ng Vin pin ng Arduino? Hindi ko mahanap ang sagot doon kahit saan sa web. Wala ito sa dokumentasyong Arduino. Ang on-board 5V regulator ay mawawala (Vin-5) * 80 mW. Ano ang maximum dissipation nito? Mukhang wala talagang nakakaalam. Ayon sa datasheet nito, ang regulator ng NCP1117 sa isang pakete ng SOT-223 na may isang minimum na tanso pad ay maaaring mawala ang 650mW. Kaya para sa isang kasalukuyang 80mA,
- Vin Power
- 8V 240mW
- 9 320
- 10 400
- 11 480
- 12 560
- 13 640
- 14 720
Upang maging ligtas, ipagpalagay ko na hindi tayo dapat lumampas sa 9V sa Vin.
Ang isang panlabas na 5V PSU ay magiging mas ligtas ngunit ginamit ko ang regulator ng Arduino at ayos lang.
Upang mapagana ang circuit, pumili ako ng isang module na pinagsasama ang isang charger na LI-ion at isang boost PSU. Malawakang magagamit ang mga ito sa eBay o naghahanap para sa "Li Charger Boost".
Gumagamit ang charger ng isang TC4056 chip na may isang kumplikadong pare-pareho kasalukuyang at pare-pareho na boltahe na algorithm. Kapag naalis mo ang input ng USB power, pumapasok ito sa standby mode na may isang pag-alis ng baterya na mas mababa sa 2uA. Ang TC4056 ay may input para sa sensing ng temperatura ngunit hindi ito magagamit sa module board (ang pin ay grounded).
Ang boost circuit umano ay 87-91% mabisa sa normal na saklaw ng boltahe ng baterya na may kasalukuyang output na 50-300mA. (Hindi ko ito nasukat mismo.) Iyon ay mabuti.
Gayunpaman, ang "standby" na kasalukuyang kapag tinanggal mo ang pagkarga ay 0.3mA na mahirap. Ang isang 300mAH cell ay maubos sa loob ng 6 na linggo. Marahil ay maubos ito hanggang ngayon ang boltahe nito ay mahuhulog sa isang nakapipinsalang antas.
Mayroong isang solong track na kumokonekta sa baterya sa boost PSU. Madali mong mapuputol ang track (tingnan ang larawan). Maghinang ng isang kawad papunta sa malaking risistor sa tuktok upang maaari mong tulay ang hiwa sa pamamagitan ng isang switch.
Ang kasalukuyang iginuhit ay 0.7uA ngayon kasama ang board na aking sinubukan. Kaya't ang cell ay tatagal ng 50 taon - mabuti, syempre hindi, ang paglabas ng sarili ng isang Li-ion cell ay halos 3% bawat buwan. 3% bawat buwan para sa isang 300mAH cell ay isang kasalukuyang ng 13uA. Ihambing iyon sa 300uA tumatagal ang boost circuit. Inaasahan kong sulit na patayin ang boost circuit.
Hindi mo dapat buksan ang load kapag nagcha-charge ang cell. Ang kasalukuyang iginuhit ng pagkarga ay maguguluhan ang pagsingil ng algorithm.
Kaya kailangan mo ng isang switch ng pagbabago ng 2-poste (hal. Isang slide switch) na alinman sa "Bukas" o ang posisyon na "Charge".
Maaari mong balewalain ang built-in na USB socket at magkakahiwalay na mga wire sa switch at iyong sariling USB socket.
O maaari mong panatilihin ang built-in na socket at gupitin ang koneksyon sa pagitan ng socket at ng maliit na tilad. Ipinapakita ng diagram sa itaas kung saan puputulin.
Ikonekta ang 5V output ng boost PSU sa 5V pin ng Arduino. Sinasabi ng mga tao na "huwag gawin iyon - dumadaan ka sa diode ng proteksyon ng Arduino". Ngunit ang Nano ay walang isang pin na konektado sa bahagi ng USB ng diode. Kumonekta lamang sa 5V pin. Ano ang pinakamasamang maaaring mangyari? Nawalan ka ng isang Nano na nagkakahalaga ng mas mababa sa £ 3.
Dapat ding palakasin ng circuit ng PSU ang amplifier para sa mga nagsasalita.
Hakbang 7: Pagdaragdag ng Mga Nagsasalita
Nais kong maging portable ang MIDI Theremin. Dapat itong magsama ng sarili nitong mga speaker at amplifier.
Maaari kang bumuo ng iyong sariling amplifier o bumili ng isang amplifier module, pagkatapos ay bumili ng mga speaker at ilagay ang mga ito sa isang kaso. Ngunit ano ang punto? Sa aking techno-midden Mayroon akong kalahating dosenang pinapatakbo na mga speaker na binili ko mula sa mga charity shop at mga benta ng car-boot lahat na mas mababa sa £ 1 bawat isa.
Ang mga maputlang asul na nagsasalita ay gumamit lamang ng 30mA sa 5V ngunit may isang mahinang tugon sa bass. Ang itim na radyo ay isang magandang hugis - naiisip ko na naaangkop ang mga module ng HC-SR04 sa mga sulok at ang display sa tuktok na ibabaw. Ang mga kulay-abo na "flat panel" ay pinapagana mula sa isang USB socket na perpekto.
Sa isang maliit na paghahanap, dapat kang makahanap ng mga pinagagana ng speaker na mayroon nang magandang kaso. Tiyaking tatakbo sila sa boltahe ng iyong power supply. Kung pinalakas ito ng apat na mga cell ng AA malamang na gagana itong OK sa 5V.
Ngunit humukay pa ako sa techno-midden at nahanap ang isang napakagandang istasyon ng docking na nakuha ko sa isang "lahat para sa £ 0.50" na kuwadra. Nawala ang charger nito at IR remote ngunit gumagana nang maayos.
Kung determinado kang bumuo ng iyong sariling pinagagana ng mga speaker, narito ang isang mahusay na Makatuturo. O maghanap ng Mga Tagubilin para sa PAM8403 o Amplifier.
Hakbang 8: Docking Station
Ito ay isang napakagandang Logitech portable docking station. Malamang na makakakuha ka ng pareho ngunit magkatulad ang mga prinsipyo sa konstruksyon.
Ang istasyon ng pantalan ay may kasamang sariling rechargeable Li-ion cell at palakasin ang PSU. (Kung ang iyo ay hindi magtatayo ng PSU na inilarawan sa itaas at laktawan ang susunod na ilang mga talata.)
Kung ang iyong amp ay may Li-ion cell marahil ito ay maaaring magkaroon ng isang boost PSU. (Ang boltahe ng solong Li-ion cell ay hindi maginhawa mababa kaya nangangailangan ng pagpapalakas.)
Una, hanapin ang mga koneksyon para sa lakas sa amplifier. Ang PSU ay magkakaroon ng malaking smoothing capacitor - tingnan ang larawan ng junk PCB. Sukatin ang boltahe sa kanilang mga solder pad sa ilalim. Ang negatibong pad ay dapat na "ground" pad ng circuit. Kung ang pcb ay napuno ng baha ay gagaling. O ang lupa ay maaaring maging isang makapal na track na pupunta sa maraming mga lugar sa board.
Maaaring may malaking mga capacitor sa yugto ng output ng amp - iyon ang makalumang paraan ng paggawa nito. Sukatin ang boltahe sa kabuuan ng mga ito habang gumagana ito. Marahil ay mag-iiba ito ayon sa musika at maaaring mag-average ng kalahati ng boltahe ng mga capacitor ng power-supply. Iyon ang mga maling capacitor - nais mo ang mga nasa PSU.
Ito ay napaka-malamang na ang board ay magkakaroon ng parehong positibo at negatibong kapangyarihan (malaki stereo kapangyarihan amps gawin ngunit hindi ko nakita ang isang magaan ang isa tulad nito). Tiyaking napili mo talaga ang ground at positive power.
Ang Logitech docking station na ginagamit ko ay may kumplikadong digital circuitry pati na rin ang analogue amp. Kung ang sa iyo ay tulad niyan, magkakaroon ito ng mga smoothing capacitor para sa 5V o 3.3V plus siguro 9V para sa amp. Sukatin ang mga voltages sa lahat ng malalaking capacitor at piliin ang pinakamalaking boltahe.
Tiyaking ang boltahe ng koneksyon ng kuryente na iyong pinili ay nakasalalay sa on / off switch. (Kapag pinatay mo ang switch, ang boltahe ay maaaring tumagal ng ilang sandali upang bumaba habang ang kapasitor ay walang laman.)
Ang mga wire ng panghinang sa anumang pinili mo bilang iyong mapagkukunan ng kuryente. Ang Logitech docking station ay gumagawa ng halos 9V na makakonekta nang mabuti sa Vin pin ng Arduino.
Ang iyong pinalakas na mga speaker o docking station ay dapat magkaroon ng isang 3.5mm jack para sa audio input. Ang isa sa mga solder-joint ay magiging ground - marahil ang pinakamalapit sa gilid ng board. Gumamit ng isang ohm-meter upang suriin na kumokonekta ito sa kung ano sa tingin mo ang lupa. Sa ilang mga input ng audio ang "kalasag" ng jack ay hindi konektado direkta sa lupa. Lumulutang ito Kaya't kung wala sa mga jack pin ay ground, huwag mag-alala para sa sandali. (Ang "kalasag" ng jack sa module na VS1053 ay lumulutang din.)
Gumamit ng isang metro upang suriin na ang jack na "ground" na pin ay nasa parehong boltahe ng ground supply ng kuryente.
Ang istasyon ng docking ng Logitech ay kakaiba. Kung ikinonekta ko ang "ground" ng socket ng Logitech jack sa "ground" ng board ng VS1053 (sa pamamagitan ng paggamit ng isang audio cable, gumana ito ng maayos ngunit ang kasalukuyang sa aking sistemang Theremin ay umakyat mula 80mA hanggang sa higit sa 200mA. Kaya't tinitiyak ko Hindi ko nakakonekta ang dalawang "bakuran". Maayos itong gumagana ngunit wala akong ideya kung ano ang nangyayari.
Hakbang 9: Paggawa ng Kaso
Ang kaso na gagawin mo ay nakasalalay sa mga materyal na kailangan mong ibigay, kung ano ang nasisiyahan ka sa pagtatrabaho at sa mga piniling pinapagana ng speaker. Anuman ang gagawin mo ay dapat tiyakin na ang mga sonar ay tumuturo sa bawat isa at pataas sa 45 °. Pagkatapos ay magkakaroon ng display screen at ang pushbutton.
Kung tiningnan mo ang aking iba pang Mga Instalable, malalaman mo na ako ay isang malaking tagahanga ng tinplate. Maaari itong baluktot sa hugis, malambot na hinang at pininturahan. Ipinapakita ng mga larawan kung paano ko inayos ang mga bagay.
Ang nangungunang tatsulok ay tinplate baluktot, soldered, puno, makinis at lagyan ng kulay. Ang mga pcbs ay mainit na nakadikit sa tatsulok at mayroong maliit na slivers ng kahoy upang kumilos bilang spacers.
Ang "front panel" ay 1mm polystyrene sheet. Ang mga standoff ay ginawa mula sa higit na sheet ng polystyrene at ang mga tornilyo na self-tapping ay hinahawakan ang stripboard sa lugar. Ang mga suporta sa kahoy ay mainit na nakadikit sa lukab sa harap ng docking station at ang mga pcbs ay naka-screw sa kanila na may mahabang mga self-tapping screw.
Sa palagay ko maaari akong magkaroon ng 3D na naka-print na bagay ngunit mas gusto ko ang mga pamamaraan ng old-school kung saan maaari kong ayusin ang mga bagay sa aking pagsabay. Ang paggawa ng mga bagay ay isang paglalakbay ng pagtuklas kaysa sa "engineering".
Hakbang 10: Pag-unlad sa Hinaharap
Paano mo pa maaunlad ang instrumento? Maaari mong baguhin ang interface ng gumagamit. Maaari mong palitan ang pindutan ng isang IR distansya sensor kaya hindi mo na kailangang hawakan ang instrumento. O baka gumamit ng isang touch screen kaysa sa isang pindutan at kaliwang kamay upang makontrol ang menu.
Pinapayagan ka ng menu ng Scale na pumili ng mga kaliskis na "hindi Western music" ngunit ipinapalagay nito na ang lahat ng mga tala ay mula sa pantay na keyboard - na kung paano gumagana ang MIDI Ang iskala ng tone ng kwartong Arabe ay may mga tala na wala sa pantay na sukat. Ang iba pang mga antas ay hindi nauugnay sa isang pantay na keyboard sa anumang paraan. Maaaring posible na gumamit ng pitch-bend upang makabuo ng mga nasabing tala. Kakailanganin mo ng ilang paraan upang tukuyin ng menu ang dalas ng bawat tala. Sa palagay ko ang pitch bend ay maaaring mailapat sa lahat ng mga tala sa channel. Kasalukuyan lamang akong gumagamit ng isang channel - channel 0. Kaya kung ito ay polyponic o may mga chords, kailangan mong i-play ang bawat tala sa isang iba't ibang channel.
Ang instrumento ay maaaring maging isang drum synthesizer. Maaaring tukuyin ng kaliwang kamay ang pitch ng isang Melodic Tom habang ang kanang sonar ay pinalitan ng isang piezo sensor na hinahampas mo upang ipatunog ang drum.
Ang dalawang kamay ay maaaring makontrol ang dalawang magkakaibang mga instrumento.
Ang kaliwang kamay ay maaaring pumili ng isang instrumento.
Halos kalahating daanan sa proyektong ito, natuklasan ko ang Altura MkII Theremin MIDI Controller ng Zeppelin Design Labs. Mukha itong pinong instrumento.
Mayroon silang ilang mga video na sulit na panoorin:
(Ninakaw ko ang salitang "bins" mula kay Altura at ang ideya na lumalawak ang isang basahan kapag ipinasok mo ito upang matulungan kang manatili dito.)
Ang aking MIDI Theremin ay naiiba sa Altura sa ilang mga paraan. Ang minahan ay gumagawa ng sarili nitong tunog kasama ang built-in na MIDI synth, amp, atbp. ang Altura ay nagpapadala ng mga mensahe sa isang panlabas na synth. Maaaring mas gusto mo ang kanilang paraan ng paggawa nito. Ang minahan ay may isang TFT screen kaysa sa isang 7-segment na display - tiyak na mas mahusay iyon ngunit maaari mong isipin na ang isang mas malaking screen ay isang pagpapabuti. Ang minahan ay gumagamit ng mga menu upang i-set up ang mga parameter habang ang sa kanila ay gumagamit ng mga knobs. Kinakailangan ang mga menu sapagkat ang minahan ay nangangailangan ng maraming mga kontrol para sa input aparato (ang sonar) at ang synth; ang Altura ay nangangailangan ng mas kaunting mga kontrol. Siguro ang mga knobs ay mas mahusay sa panahon ng isang live na pagganap. Siguro ang akin ay dapat magkaroon ng mga knobs. Ang isang knob para sa pagpili ng Mga Pag-set up ay maaaring maging mabuti.
Ang Altura ay may isang "Artikulasyon" na kontrol na nagtatakda kung gaano kabilis maaaring i-play. Hindi ko isinama iyon sa aking software - marahil dapat ay naroroon ito. Ang Altura ay mayroong isang Arpeggiator (step sequencer). Magandang ideya yan; ang sa akin ay may chords na kung saan ay hindi pareho ang parehong bagay.
Kaya ayun. Inaasahan kong nasiyahan ka sa pagbuo at paggamit ng isang MIDI-Theremin. Ipaalam sa akin kung nakakita ka ng anumang mga pagkakamali sa aking paglalarawan o kung maaari kang mag-isip ng anumang mga pagpapabuti.
Inirerekumendang:
Paano Mag-disassemble ng isang Computer Na May Madaling Hakbang at Mga Larawan: 13 Hakbang (na may Mga Larawan)
Paano Mag-disassemble ng isang Computer Na May Madaling Mga Hakbang at Larawan: Ito ay isang tagubilin tungkol sa kung paano i-disassemble ang isang PC. Karamihan sa mga pangunahing sangkap ay modular at madaling matanggal. Gayunpaman mahalaga na maging maayos ka tungkol dito. Makakatulong ito upang maiwasan ka sa pagkawala ng mga bahagi, at sa paggawa din ng muling pagsasama
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Mga Kapansanan sa Locomotor: 9 Mga Hakbang (na may Mga Larawan)
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Kapansanan sa Locomotor: Ang mga taong may malubhang mga kapansanan sa lokomotor tulad ng mga sanhi ng cerebral palsy ay madalas na may mga kumplikadong pangangailangan sa komunikasyon. Maaaring kailanganin silang gumamit ng mga board na may alpabeto o karaniwang ginagamit na mga salitang nakalimbag sa kanila upang makatulong sa komunikasyon. Gayunpaman, marami
Malaking LED na "singsing" na Liwanag para sa Timelapse, Mga Larawan at Higit Pa : 11 Mga Hakbang (na may Mga Larawan)
Malaking LED na "singsing" na Liwanag para sa Timelapse, Mga Larawan at Higit Pa …: Nag-shoot ako ng maraming mga timelaps na video na sumasaklaw ng ilang araw, ngunit kinamumuhian ang hindi pantay na ilaw na ibinibigay ng mga ilaw ng clamp - lalo na sa gabi. Ang isang malaking ilaw ng singsing ay masyadong mahal - kaya't nagpasya akong gumawa ng isang bagay sa aking sarili sa isang solong gabi na may mga gamit na nasa kamay ko.
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: 7 Mga Hakbang (na may Mga Larawan)
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: Mayroong maraming mga satellite sa itaas ng aming mga ulo. Alam mo ba, na ang paggamit lamang ng Iyong computer, TV Tuner at simpleng DIY antena Maaari mong matanggap ang mga pagpapadala mula sa kanila? Halimbawa ng mga real time na larawan ng mundo. Ipapakita ko sa iyo kung paano. Kakailanganin mo ang: - 2 w
Hindi tinatagusan ng tubig Mga Nagsasalita Na Lumulutang - " Lumulutang Ito, Nag-i-Totes at Inililigaw nito ang Mga Tala! &Quot;: 7 Mga Hakbang (na may Mga Larawan)
Hindi tinatagusan ng tubig Mga Nagsasalita Na Lumulutang - " Lumulutang Ito, Nag-i-Totes Ito at Itinaboy ang Mga Tala! &Quot;: Ang proyektong ito na hindi tinatagusan ng tubig na nagsasalita ay binigyang inspirasyon ng maraming mga paglalakbay sa Gila River sa Arizona (at SNL's " Nasa isang Bangka ako! &Quot; ). Lutang namin ang ilog, o maglalagay ng mga linya sa baybayin upang ang aming mga float ay manatili sa tabi mismo ng aming lugar ng kampo. Lahat ng tao