Talaan ng mga Nilalaman:

Arduino Soundlab: 3 Mga Hakbang
Arduino Soundlab: 3 Mga Hakbang

Video: Arduino Soundlab: 3 Mga Hakbang

Video: Arduino Soundlab: 3 Mga Hakbang
Video: Bubble Machine - Make & Do 2024, Oktubre
Anonim
Image
Image
Konstruksyon
Konstruksyon

Ito ay hindi kapani-paniwala kung ano ang isang malawak na hanay ng mga kamangha-manghang mga tunog ay maaaring malikha sa pamamaraan ng pagbubuo ng FM, kahit na ang paggamit ng isang simpleng Arduino. Sa isang nakaraang pagtuturo na ito ay isinalarawan sa isang synthesizer na mayroong 12 paunang naka-program na tunog, ngunit iminungkahi ng isang manonood na mas cool na magkaroon ng ganap na kontrol ng mga parameter ng tunog sa mga potensyal, at ganoon talaga!

Sa sound lab na ito, ang mga tono ay maaaring kontrolin ng 8 mga parameter: 4 para sa sobre ng ADSR ng lakas at 4 para sa dalas ng modulation na tumutukoy sa pagkakayari.

Ang pagdaragdag ng 8 potentiometers ay hindi napunta sa halaga ng bilang ng mga susi: tatlong set ng 8 key ang binabasa nang sunod-sunod ang ilang mga microsecond, para sa isang kabuuang 24 na mga key, na tumutugma sa dalawang buong oktaba. Sa katunayan, ang dalawang mga pin ng Arduino ay hindi nagamit at ang pagpapalawak sa 40 mga susi ay posible.

Tingnan ang video kung paano makagawa ng mga ligaw na tunog, narito ang isang maikling pangkalahatang ideya:

* A = atake: oras para sa isang tono upang maabot ang maximum na lakas nito (saklaw na 8ms-2s)

* D = pagkabulok: oras para sa isang tono upang bumaba sa kanyang matatag na antas ng lakas (saklaw 8ms-2s)

* S = mapanatili: matatag na antas ng lakas (saklaw 0-100%)

* R = bitawan: oras para sa isang tono upang mamatay (saklaw 8ms-2s)

* f_m: ratio ng dalas ng modulation sa dalas ng carrier (saklaw na 0.06-16) na mga halaga sa ibaba 1 na nagreresulta sa mga undertone, mas mataas na mga halaga sa mga overtone

* beta1: amplitude ng modulasyon ng FM sa simula ng tala (saklaw na 0.06-16) maliit na mga halaga ay nagreresulta sa mga menor de edad na pagkakaiba-iba ng tunog ng tunog. ang mga malalaking halaga ay nagreresulta sa mga nakatutuwang tunog

* beta2: amplitude ng modulasyon ng FM sa dulo ng tala (saklaw na 0.06-16) Bigyan ang beta2 ng ibang halaga kaysa sa beta1 upang mag-evolve ang tunog ng tunog sa oras.

* tau: bilis kung saan ang FM amplitude ay nagbabago mula beta1 hanggang beta 2 (saklaw na 8ms-2s) Ang mga maliliit na halaga ay nagbibigay ng isang maikling putok sa simula ng isang tala, malalaking halaga ng isang mahaba at mabagal na ebolusyon.

Hakbang 1: Konstruksiyon

Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon

Malinaw, ito ay isang prototype pa rin, inaasahan kong isang araw sa akin o sa iba pa ay magtatayo ng malaki at malakas at maganda na may malalaking mga susi at tunay na pagdayal para sa mga potensyal sa isang kahanga-hangang enclosure ….

Mga kinakailangang bahagi:

1 Arduino Nano (Hindi ito gagana sa Uno, na mayroon lamang 6 na analog input)

24 mga push-button

8 potentiometers, sa saklaw na 1kOhm - 100kOhm

1 potentiometer ng 10kOhm para sa control ng dami

1 kapasitor - 10microfarad electrolitic

1 3.5mm earphone jack

1 LM386 audio amplifier chip

2 1000microfarad electrolitic capacitor

1 ceramic 1microfarad capacitor

1 microswitch

1 8Ohm 2Watt speaker

1 10x15cm prototype board

Tiyaking naiintindihan mo ang mga nakakabit na eskematiko. Ang 24 na mga pindutan ay nakakonekta sa 3 mga pangkat ng 8, upang mabasa sa D0-D7, at upang maaktibo sa D8, D10 at D11. Ang mga kaldero ay mayroong + 5V at ground sa mga taps ng pagtatapos at ang gitnang taps ay pinakain sa mga analog input na A0-A7. Ang D9 ay may audio output at nakakakuha ng AC-isinama sa isang 10kOhm potentiometer para sa control ng dami. Ang tunog ay maaaring direktang makinig sa mga earphone, o pinalakas ng isang LM386 audio amplifier chip.

Ang lahat ay umaangkop sa isang 10x15cm protoptype board, ngunit ang mga pindutan ay masyadong malapit upang maglaro nang maayos, kaya mas mahusay na bumuo ng isang mas malaking keyboard.

Ang circuit ay maaaring pinalakas sa pamamagitan ng koneksyon ng USB sa Arduino Nano, o sa isang panlabas na 5V power supply. Ang isang kahon ng baterya ng 2xAA na sinusundan ng isang step-up converter ay isang perpektong solusyon sa pag-power.

Hakbang 2: Software

I-upload ang naka-attach na sketch sa Arduino Nano at dapat na gumana ang lahat.

Ang code ay Straigthforward at madaling mabago, walang machine code at walang interrupts, ngunit mayroong isang pares ng direktang pakikipag-ugnayan sa mga rehistro, upang makipag-ugnay sa timer, upang mapabilis ang pagbabasa ng pindutan at upang makontrol ang pag-uugali ng ADC para sa pagbabasa ng potensyomiter

Hakbang 3: Mga Pagpapabuti sa Hinaharap

Ang mga ideya mula sa pamayanan ay palaging maligayang pagdating!

Pinaka-abala ako ng mga pindutan: ang mga ito ay maliliit at mag-click nang husto kapag tinulak. Masarap talaga na magkaroon ng mas malaking mga pindutan na mas komportable na itulak. Gayundin, papayagan ng mga pindutan na puwersa- o bilis-sensitivy na kontrolin ang lakas ng mga tala. Siguro maaaring gumana ang 3-way pushbuttons o mga pindutan na sensitibo sa ugnayan?

Ang iba pang magagandang bagay ay ang mag-iimbak ng mga setting ng tunog sa EEPROM, ang pag-iimbak ng mga maikling himig sa EEPROM ay magpapahintulot din upang makagawa ng mas kawili-wiling musika. Sa wakas, maaaring magkaroon ng mas kumplikadong mga tunog, kung may nakakaalam kung paano makabuo ng mga tunog ng pagtambulin sa isang mahusay na computationally na paraan, magiging kahanga-hanga…

Inirerekumendang: