Sisukord:

Analoogheli süntees arvutis: 10 sammu (piltidega)
Analoogheli süntees arvutis: 10 sammu (piltidega)

Video: Analoogheli süntees arvutis: 10 sammu (piltidega)

Video: Analoogheli süntees arvutis: 10 sammu (piltidega)
Video: Eesti Keeletehnoloogia 2017 keeletarkvara päev 3/3 2024, November
Anonim
Analoogheli süntees teie arvutis
Analoogheli süntees teie arvutis

Nagu nende vanade analoogsüntesaatorite heli? Kas soovite mängida ühega omal ajal, oma kohas, nii kaua kui soovite, TASUTA? Siin saavad teoks teie metsikumad Moogi unistused. Võite saada elektroonilise salvestuse kunstnikuks või teha lihtsalt lahedaid ja põnevaid helisid, mida oma mp3 -mängijast kuulata. Kõik, mida vajate, on arvuti! Kõik see on tehtud LTSpice nimelise tasuta vooluahela simulaatori abil. Nüüd ma tean, et sa ilmselt ütled: "Gee willikers, Tyler, ma ei tea ringrajasimulaatori juhtimisest midagi- see kõlab KÕVALT!". Ära muretse, Bunky! See on lihtne ja ma annan teile mõned mallid alustamiseks ja muutmiseks, et teha mis tahes imelikke helisid. Kas pole kindel, kas see on pingutust väärt? Siin on link esitusvalmis helifailile (see on tehtud "kompositsiooni_1.asc" selle ible'i 7. sammus), mida saate proovida. Teisendasin selle.wav -st mp3 -ks, et vähendada allalaadimisaega. https://www.rehorst.com/mrehorst/instructables/composition_1.mp3Heli sisaldab madalat bassi, nii et kuulake kõrvaklappide või heade kõlaritega. Kui teile meeldib see, mida näete, hääletage minu poolt! Märkus. Lisasin LTSpice'i jaoks skemaatilised failid, mida saate oma arvutis käivitada, kuid millegipärast muudetakse nende allalaadimisel nimesid ja laiendusi. Failide sisu tundub OK, nii et pärast failide allalaadimist muutke lihtsalt nimed ja laiendid ning need peaksid töötama. Õiged nimed ja laiendid kuvatakse ikoonidel, mille allalaadimiseks klõpsate.

Samm: esiteks esimesed asjad

LTSpice on Windowsi programm, kuid ärge laske sellel end alt vedada. See töötab hästi Wine'i all Linuxis. Ma kahtlustan, et selle käivitamisel VMWare kliendis, VirtualBoxis või muudes virtualiseerimisvahendites linuxi all ja probabalil ka Macis pole probleeme. Laadige alla LTSpice for Windows koopia (ugh!) Siit: https://www.linear.com/ designtools/software/ltspice.jspPaigaldage see. Mis on LTSpice? See on ajapiirkonna vooluahela simulaator, mida iga elektroonikaharrastaja peaks teadma. Ma ei anna üksikasjalikku õpetust selle kohta, kuidas see siin töötab, kuid selgitan mõningaid asju, mida peate teadma. või liiga kõrge, et kuulda. Kui teete seda ja sõidate oma kallite kõlaritega suure võimsusega võimendiga, võite kõlarid/võimendi lihtsalt tükkideks puhuda. Vaadake ALATI lainekuju enne nende taasesitamist ja olge ettevaatlik, et faili esmakordsel taasesitamisel lihtsalt helitugevuse piiramiseks helitugevust piirata. Enne kõlarite proovimist on alati hea mõte mängida faile madalate helitugevustega odavate kõrvaklappide kaudu.

2. samm: sisend

Sisend
Sisend

Simulaatori sisend on skemaatilise diagrammi kujul. Valite komponendid, asetate need skeemile ja ühendate need kokku. Kui teie vooluahel on lõpule jõudnud, ütlete simulaatorile, kuidas soovite seda vooluahelat simuleerida ja millist väljundit soovite. Heitke pilk skeemile nimega resistors.asc. Näete, et seal on ahel, mis sisaldab pingeallikat, takistite paari, märgistatud väljundsõlme, maandust ja teksti käsurealt. Vaatame igaüks neist. Nüüd on hea aeg avada allpool lingitud ahelafail. Maandus: see on teie skeemi KRIITILISEM komponent. Teil PEAB olema maandus ühendatud vähemalt ühe punktiga teie ahelas, muidu saate oma simulatsioonidest väga kummalisi tulemusi. Pingeallikas: kui panete vooluahelasse pinge, peate ütlema, kas see on vahelduvvool või alalisvool (või midagi keerulisemat), milline on pinge, allika "sisemine takistus" jne. Need parameetrid saate sisestada, klõpsates hiire parema nupuga allika all. Kõik, mida vajate, on lihtsate simulatsioonide vastupidavus. Takistid: takistid on üsna kergesti mõistetavad. Vastupidavuse väärtuse määramiseks paremklõpsake lihtsalt. Ignoreerige kõiki muid parameetreid, mis võivad seal peituda. Märgistatud sisend- ja väljundsõlmed: lihtsalt ahelas olevate sõlmede nimed, mis on kasutajasõbralikud.- kasutage nimesid nagu "väljund", "sisend" jne. Simulatsiooni direktiiv: lause.tran ütleb simulaatorile, kuidas soovite vooluringi simuleerida. See on ajadomeeni simulaator, mis tähendab, et see analüüsib vooluringi erinevatel ajahetkedel. Peate talle ütlema, milline peaks olema maksimaalne ajaetapp ja kui kaua simulatsioon peaks toimima "ringiajal", mitte reaalajas. Kui käsite simulaatoril töötada 10 sekundit vooluahelat ja määrate maksimaalseks sammuks 0,001 sekundit, analüüsib see vooluringi vähemalt 10 000 korda (10 sekundit/0,001 sekundit) ja seejärel peatub. Kui simulatsioon töötab, arvutatakse ja salvestatakse igal ajahetkel pinge ahela igas sõlmes ning voolud igasse sõlme ja sealt välja. Kogu see teave on saadaval ekraanil, näiteks ostsilloskoobi ekraanil, joonistamiseks (horisontaaltelje aeg, pinge või vool vertikaalteljel. Teise võimalusena saate väljundi saata ka.wav helifaili, mida saate mängida arvutisse, kirjutage CD -le või teisendage mp3 -ks, et mängida oma mp3 -mängijaga. Lisateavet sellest hiljem…

3. samm: väljund

Väljund
Väljund

Väljund võib olla pinge vs aeg, pinge vs pinge jne graafiline graafik või tekstifail, mis koosneb igal ajahetkel hunnikust pingetest või vooludest, või.wav helifail, mida me hakkame palju kasutama see on juhendatav. Laadige alla ja avage fail "resistors.asc". Klõpsake väikese jooksumehe sümbolil (ekraani vasakus ülanurgas) ja vooluring peaks toimima. Nüüd klõpsake ahela sildil "OUT". Graafilisel väljundil kuvatakse pinget märgistusega "väljund" piki horisontaaltelge, mis tähistab aega. See on pinge, mida mõõdetakse maapinna suhtes (sellepärast vajate igas vooluringis vähemalt ühte maandust!). Need on põhitõed. Proovige muuta ühte takisti väärtust või pinget, seejärel käivitage simulatsioon uuesti ja vaadake, mis juhtub väljundpingega. Nüüd teate, kuidas vooluahela simulaatorit käivitada. Lihtne kas polnud?

4. samm: nüüd natuke heli

Nüüd natuke heli!
Nüüd natuke heli!

Avage ahel nimega "dizzy.asc". See on imelik mürategija, mis kasutab modulaatorit ja paari pingeallikat CD -kvaliteediga (16 bitti, 44,1 ksps, 2 kanalit) helifaili tootmiseks, mida saate mängida. Modulaatori komponent on tegelikult ostsillaator. Sagedus ja amplituud on mõlemad reguleeritavad nagu VCO ja VCA tõelises analoogsüntesaatoris. Lainekuju on alati sinusoidaalne, kuid selle muutmiseks on võimalusi- täpsemalt sellest hiljem. Sageduspiirid määratakse märgi ja ruumi parameetritega. Märk on sagedus, kui FM sisendpinge on 1 V ja tühik on sagedus, kui FM sisendpinge on 0 V. Väljundsagedus on FM sisendpinge lineaarne funktsioon, nii et sagedus jääb poole võrra märgi ja ruumi sageduste vahele, kui FM sisendpinge on 0,5 V, ja on 2x märgisagedus, kui FM sisendpinge on 2 V. modulaatorit saab amplituudmoduleerida ka AM sisendpistiku kaudu. Modulaatori (ostsillaatori) väljundamplituud vastab AM pinge sisendile rakendatavale pingele. Kui kasutate alalisvooluallikat pingega 1, on väljundi amplituud 1 V (see tähendab, et see kõigub vahemikus -1 kuni +1 V). Modulaatoril on kaks väljundit- siinus ja koosinus. Lainekujud on täpselt samad, välja arvatud juhul, kui need on faasist 90 kraadi väljas. See võib olla stereohelirakenduste jaoks lõbus. On olemas.tran -lause, mis ütleb simulaatorile maksimaalse ajaetapi ja simulatsiooni kestuse. Sel juhul vooluaeg (kogu simulatsiooniaeg) = helifaili aeg. See tähendab, et kui käivitate simulatsiooni 10 sekundit, saate helifaili, mis on 10 sekundit pikk. Lauset.save kasutatakse selleks, et minimeerida andmete hulk, mille simulaator simulatsiooni käivitamisel salvestab. Tavaliselt säästab see pinget igas sõlmes ja voolu igasse komponenti ja sealt välja. See võib lisada kuni PALJU andmeid, kui teie ahel muutub keeruliseks või käivitate pika simulatsiooni. Simulatsiooni käivitamisel valige dialoogiboksi loendist lihtsalt üks pinge või vool ja andmefail (.raw) on väike ning simulatsioon töötab maksimaalse kiirusega. Lõpuks ütleb lause.wave simulaatorile, et looge CD -kvaliteediga stereohelifail (16 bitti proovi kohta, 44,1 ksps, kaks kanalit), pannes vasakpoolsesse kanalisse pinge "OUTL" ja paremasse kanalisse "OUTR".. Wav -fail koosneb 16 -bitistest näidistest. Täielik skaala väljund.wav -failis (kõik proovi 16 bitti on sisse lülitatud) toimub siis, kui väljundpinge on täpselt +1 V või -1 V. Teie süntesaatori ahel tuleks seadistada nii, et see tekitaks igale kanalile mitte rohkem kui +/- 1 V pinget, vastasel juhul kärbitakse.wav -faili väljund alati, kui pinge ületab +1 või -1 V. helifaili, mille proov on 44,1 ksps, vajame simulaatorit vooluahela simuleerimiseks vähemalt 44, 100 korda sekundis, seega seadsime maksimaalseks ajavahemikuks 1/44, 100 sekundit või umbes 20 mikrosekundit (meie).

Samm: muud tüüpi pingeallikad, muud tüüpi helid

Muud tüüpi pingeallikad, muud tüüpi helid
Muud tüüpi pingeallikad, muud tüüpi helid
Muud tüüpi pingeallikad, muud tüüpi helid
Muud tüüpi pingeallikad, muud tüüpi helid

Analoogsüntesaator vajab juhusliku müra allikat. Saate tekitada müra "käitumusliku pingeallika" (bv) abil ja saate selle sisse ja välja lülitada, kasutades "pingega juhitavat lülitit" (sw). Komponendi bv kasutamine müra tekitamiseks hõlmab pinge määratlemist valemi alusel. Müra tekitamise valem näeb välja selline: V = valge (aeg*X)*Y Valge funktsioon loob juhusliku pinge vahemikus -0,5 kuni +0,5 V, kasutades külvina praegust ajaväärtust. Kui seadistate Y väärtuseks 2, saate kõikumise +/- 1V. Seade X vahemikus 1 000 (1e3) kuni 100 000 (1e5) mõjutab müraspektrit ja muudab heli. Pingega juhitav lüliti vajab ka teatud parameetrite seadistamist.modeli avalduses. Soovi korral saate kasutada mitut pingega juhitavat lülitit ja mitut mudeli avaldust. Peate ütlema simulaatorile sisse- ja väljalülitustakistused ning lävepinge, mille juures see lülitub. Vh on "hüstereesipinge". Seadistage see mõnele positiivsele väärtusele, näiteks 0,4 V, ja lüliti avamisel ja sulgemisel ei kostu klõpsatusi. >>> Värskendus: siin on veelgi lihtsam viis suletud müraallika loomiseks- korrutage mürapinge impulsiga allikas- vt easy_gated_noise.asc, allpool.

6. samm: kellad, trummid, taldrikud, kitkunud keelpillid

Kellad, trummid, taldrikud, kitkunud keelpillid
Kellad, trummid, taldrikud, kitkunud keelpillid

Kellad, trummid, taldrikud ja kitkutud keelpillid on kõik löökpillid. Neil on suhteliselt kiire tõusuaeg ja eksponentsiaalne lagunemisaeg. Neid on lihtne luua, kasutades siinus- ja käitumispingeallikaid koos mõne lihtsa vooluahelaga. Vaadake skemaatilist "bell_drum_cymbal_string.asc". Impulsspingeallikad koos takisti, kondensaatori ja dioodiga loovad vajaliku kiire tõusu ja aeglase eksponentsiaalse lagunemise lainekuju. Need väljundpinged moduleerivad käitumuslike allikate väljundeid, mis on seatud juhuslikeks müra- või siinuslaineallikateks. Kui impulssallika pinge tõuseb, laadib see kiiresti kondensaatori. Seejärel tühjeneb kondensaator läbi takisti. Diood hoiab pingeallika kondensaatorit tühjendamast, kui allika pinge on null. Suuremad takisti väärtused pikendavad tühjenemisaega. Saate määrata impulssallika tõusuaja - taldrik on väga kiire tõusuajaga niseallikas. Trummel on ka müraallikas, mis töötab madalamal sagedusel ja millel on aeglasem tõusuaeg. Kell ja string kasutavad siinuslaineallikaid, mida moduleerivad ka impulssallikad. Kell töötab kõrgemal sagedusel ja sellel on kiirem tõusuaeg kui stringil. Käivitage simulatsioon ja kuulake tulemust. Pange tähele, et trummel ilmub mõlemasse kanalisse, samas kui kõik muud helid on kas parem- või vasakkanalid. Trumli väljundis olevad kaks takistit vastutavad heli mõlemasse kanalisse suunamise eest.

Samm: pange see kõik kokku

Kõike kokku panema
Kõike kokku panema

OK, nüüd olete näinud, kuidas teha mõningaid helisid ja kuidas ümbrikke kujundada ja sagedust neid moduleerida. Nüüd on aeg koondada mõned erinevad allikad ühte skeemi ja luua midagi huvitavat kuulamiseks. Kuidas saada see müraallikas kompositsiooni 33 sekundi pärast? Kuidas lülitada see helisev kell 16 sekundi pärast sisse, seejärel välja lülitada ja seejärel 42 sekundi pärast uuesti sisse lülitada? Üks võimalus on kasutada soovitud heli tekitamiseks käitumuslikku pingeallikat, seejärel see sisse ja välja lülitada, korrutades heli tekitava pinge teise pingega, mis lülitab heli sisse ja välja, nagu tehti kaustas bell_drum_cymbal_string.asc. Saate teha sama asja helide sisse- ja väljalülitamiseks. Siin on idee seadistada korduvaid helisid ja seejärel kasutada täiendavaid allikaid, et need helid soovitud ajal oma kompositsioonile lisada, korrutades nende pinged helipingetega. Lõppheliväljundisse saate lisada nii palju pingeid kui soovite, lihtsalt korrutage neid (sama mis loogiline "ja") koos. Alustades helisid korraga, jäävad need kogu kompositsiooni ajal ideaalsesse sünkrooni, nii et nad ei jää kunagi muusika alguses ega hiljaks. Vaadake kompositsiooni_1.asc. Kelli on kaks, igas kanalis üks. Pulse_bell pinged töötavad kogu simulatsiooni vältel, kuid helid ilmuvad väljundisse ainult siis, kui V (bell_r) ja V (bell_l) ei ole võrdsed 0 -ga.

8. samm: eksponentsiaalne tõus

Eksponentsiaalne kaldtee
Eksponentsiaalne kaldtee
Eksponentsiaalne kaldtee
Eksponentsiaalne kaldtee

Värskendage 7/10- kerige alla V1 ja V2 genereerivad lineaarseid kaldteid, mis algavad 0 -st ja tõusevad perioodidel prd_l ja prd_r kuni X volti (vasak kanal) ja Y volti (parem kanal). B1 ja B3 kasutavad valemit lineaarsete kaldteede muutmiseks eksponentsiaalseteks kaldteedeks, mille maksimaalne amplituud on 1 V. B2 ja B4 tekitavad juhuslikku müra, mille amplituudi moduleerivad eksponentsiaalsed kaldteed ja parameetrid amp_l ja amp_r (lihtsad taseme juhtnupud). Olen lisanud selle vooluahela loodud mp3 -faili, et saaksite kuulda, kuidas see kõlab. Tõenäoliselt peate faili esitamiseks ümber nimetama. X ja Y määravad lineaarsete kaldteede pingepiirangud. Lõpuks skaleeritakse mõlema kanali kaldteed 1 V -ni, kuid seadistades X ja Y saate kontrollida eksponentsiaalse kaldtee järsust. Väike arv nagu 1 annab peaaegu lineaarse kaldtee ja suur arv nagu 10 annab väga järsu eksponentsiaalse kaldtee. Kaldtee perioodid määratakse parameetrite prd_l ja prd_r abil. Kaldtee lineaarne tõusuaeg on seatud väärtusele prd_l või prd_r miinus 5 ms ja langemisajaks 5 ms. Pikaajaline langemisaeg ei lase iga kaldtee lõpus klõpsata, kuna amplituud langeb tagasi nulli. Out_l ja out_r on ajapõhise juhusliku mürapinge, eksponentsiaalse kaldtee pinge ning parameetrite amp_l ja amp_r korrutised. Pange tähele, et parema kanali juhusliku müra väärtus kasutab erinevat "seemet" kui vasak kanal. See hoiab müra igas kanalis juhuslikult ja erineb vastaskanalist. Kui kasutate sama seemet, saate sama väärtuse sama juhusliku väärtuse ja heli satub keskele, selle asemel, et neid tajuda kahe erineva allikana, üks igas kanalis. See võib olla huvitav efekt, millega mängida … Värskendus: pange tähele, et lainekuju läheb 0 V -st mõne positiivse väärtuseni. Parem on, kui pinge kõigub võrdsete positiivsete ja negatiivsete väärtuste vahel. Töötasin skeemi ümber, et seda teha, kuid see suurendas lainekuju pisut määratleva võrrandi keerukust. Laadige alla eksponentsiaalne_ramp_noise.asc (pidage meeles, et Instructables server muudab selle salvestamisel nime ja laiendust).

9. samm: siinuslainele rakendatav eksponentsiaalne kaldtee

Eksponentsiaalne kaldtee siinuslainele
Eksponentsiaalne kaldtee siinuslainele

See leht näitab, kuidas eelneva astme eksponentsiaalse kaldtee abil siinusallikat (tegelikult siinust ja koosinusust) moduleerida. Käitumuslikku pingeallikat kasutatakse lineaarse kaldtee muutmiseks eksponentsiaalseks kaldteeks, mis juhib FM -sisendit modulate2 komponendile. Amplituudi moduleerivad nii kiire eksponentsiaalne kaldtee kui ka aeglane siinuslaine. Kuulake näidisfaili- see kõlab üsna imelikult.

10. samm: soovitused

1) Saate simulatsiooni kogukestust varieerida - jätke see komponentidega mängides lühikeseks ja kui teile meeldib heli, siis seadke simulaator 30 minutiks (1800 sekundiks) või nii kauaks, kui soovite. Saate kopeerida vooluahelaid ühelt lehelt teisele ja teha alamlülitusi, et saaksite lihtsalt ühendada väikeseid vooluahela mooduleid, näiteks kasutades tõelist süntesaatorit. 2) CD proovivõtu sagedus on 44,1 ksps. Kui hoiate maksimaalse ajavahemiku 20 USA-ni, saate väljundi puhtaks, sest simulaatoril on iga uue proovi kohta andmed saadaval. Kui kasutate väiksemat ajaetappi, on simulatsioon aeglane ja tõenäoliselt ei mõjuta see heli. Kui kasutate pikemat ajaetappi, võite kuulda varjunime, mis võib teile meeldida või mitte. 3) Kasutage oma skeemil dialoogiboksi.save ja simulatsiooni käivitamisel valige ainult üks pingetest või vooludest, faili suurus.raw on väike. Kui te valikut ei tee, salvestatakse KÕIK pinged ja voolud ning.raw -fail muutub VÄGA suureks. 4) proovige kõrgemate sageduste moduleerimiseks kasutada väga madalaid sagedusi5) proovige madalamate sageduste moduleerimiseks kasutada kõrgemaid sagedusi. 7) kasutage impulsspingeallikat, et moduleerida siinust või muud allikat, et pakkuda rütmi.) kasutage käitumusliku pingeallika väljundi määratlemiseks matemaatilisi väljendeid

Soovitan: