Sadržaj:

Arduino Soundlab: 3 koraka
Arduino Soundlab: 3 koraka

Video: Arduino Soundlab: 3 koraka

Video: Arduino Soundlab: 3 koraka
Video: Arduino soundlab 2024, Novembar
Anonim
Image
Image
Građevinarstvo
Građevinarstvo

Nevjerojatno je što se širokim rasponom zadivljujućih zvukova može stvoriti tehnikom FM sinteze, čak i pomoću običnog Arduina. U prethodnom uputstvu to je ilustrirano sintisajzerom koji je imao 12 unaprijed programiranih zvukova, ali gledatelj je predložio da bi bilo mnogo hladnije imati potpunu kontrolu parametara zvuka pomoću potenciometara, i tako je!

U ovoj laboratoriji za zvuk tonovi se mogu kontrolirati pomoću 8 parametara: 4 za ADSR omotač jačine i 4 za frekvencijsku modulaciju koja određuje teksturu.

Dodavanje 8 potenciometara nije išlo na račun broja ključeva: tri seta od 8 ključeva očitavaju se nekoliko mikrosekundi jedan za drugim, za ukupno 24 ključa, što odgovara dvije pune oktave. U stvari, dva Arduino pina su nekorištena i bilo bi moguće proširiti ih na 40 ključeva.

Pogledajte video zapis o tome kako stvarati divlje zvukove, evo kratkog pregleda:

* A = napad: vrijeme da ton dostigne maksimalnu jačinu (raspon 8ms-2s)

* D = slabljenje: vrijeme da se ton spusti na stalan nivo jačine (raspon 8ms-2s)

* S = održavanje: stalan nivo jačine zvuka (raspon 0-100%)

* R = otpuštanje: vrijeme za izumiranje tona (raspon 8ms-2s)

* f_m: omjer frekvencije modulacije prema nosivoj frekvenciji (raspon 0,06-16) vrijednosti ispod 1 rezultiraju podtonovima, veće vrijednosti u prizvucima

* beta1: amplituda FM modulacije na početku note (raspon 0,06-16) male vrijednosti rezultiraju manjim varijacijama teksture zvuka. velike vrijednosti rezultiraju ludim zvucima

* beta2: amplituda FM modulacije na kraju note (raspon 0,06-16) Dajte beta2 različitu vrijednost od beta1 kako bi se zvučna tekstura vremenom razvijala.

* tau: brzina kojom FM amplituda evoluira od beta1 do beta 2 (raspon 8ms-2s) Male vrijednosti daju kratak udarac na početku note, velike vrijednosti dugu i sporu evoluciju.

Korak 1: Izgradnja

Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo
Građevinarstvo

Očigledno, ovo je još uvijek prototip, nadam se da ćemo jednog dana ja ili netko drugi sagraditi ovaj veliki i snažan i lijep s velikim ključevima i pravim brojčanicima za potenciometre u sjajnom kućištu …

Potrebne komponente:

1 Arduino Nano (Neće raditi s Uno -om koji ima samo 6 analognih ulaza)

24 tastera

8 potenciometara, u rasponu od 1 kOhm - 100 kOhm

1 potenciometar od 10 kOhm za kontrolu jačine zvuka

1 kondenzator - 10microfarad elektrolitički

1 priključak za slušalice od 3,5 mm

1 čip audio pojačala LM386

2 1000microfarad elektrolitički kondenzator

1 keramički kondenzator od 1 mikrofarad

1 mikroprekidač

1 8Ohm 2Watt zvučnik

1 ploča prototipa 10x15 cm

Uvjerite se da razumijete priložene sheme. 24 dugmeta se povezuju u 3 grupe od 8, za očitavanje na D0-D7 i za aktiviranje na D8, D10 i D11. Posude imaju +5V i uzemljene su na krajnjim slavinama, a centralne slavine se napajaju na analogne ulaze A0-A7. D9 ima audio izlaz i naizmjenično je povezan s potenciometrom od 10 kOhm za kontrolu glasnoće. Zvuk se može direktno slušati slušalicama ili pojačati pomoću čipa za audio pojačalo LM386.

Sve stane na ploču prototipa 10x15 cm, ali tipke su preblizu da bi dobro svirale, pa bi bilo bolje konstruirati veću tastaturu.

Krug se može napajati putem USB veze na Arduino Nano ili pomoću vanjskog napajanja od 5 V. Kutija za baterije 2xAA koju prati pojačani pretvarač savršeno je rješenje za napajanje.

Korak 2: Softver

Prenesite priloženu skicu na Arduino Nano i sve bi trebalo funkcionirati.

Kôd je jednostavan i jednostavan za izmjenu, nema mašinskog koda i prekida, ali postoji nekoliko direktnih interakcija s registrima, za interakciju s tajmerom, za ubrzanje očitanja tipki i za upravljanje ponašanjem ADC -a za očitavanje potenciometra

Korak 3: Buduća poboljšanja

Ideje iz zajednice su uvijek dobrodošle!

Najviše mi smetaju dugmad: oni su sićušni i snažno kliknu kada se pritisnu. Bilo bi zaista lijepo imati veće tipke koje je ugodnije pritisnuti. Također, tipke osjetljive na silu ili brzinu omogućile bi kontrolu glasnoće nota. Možda bi trosmjerni gumbi ili tipke osjetljive na dodir mogle funkcionirati?

Druge lijepe stvari bile bi spremanje postavki zvuka u EEPROM. Pohranjivanje kratkih melodija u EEPROM također bi omogućilo stvaranje mnogo zanimljivije muzike. Konačno, mogli bi se generirati složeniji zvukovi, ako netko zna generirati udaraljke na računarski efikasan način, to bi bilo sjajno …

Preporučuje se: