Kazalo:
- 1. korak: Zahteve 1/3 - Strojna oprema
- 2. korak: Zahteve 2/3 - Komponente za vaše vezje
- 3. korak: Zahteve 3/3 - Programska oprema
- 4. korak: Vhodno vezje
- 5. korak: Izhodno vezje
- 6. korak: [NEOBVEZNO] Ustvarjanje tiskanega vezja in komponent za spajkanje
- 7. korak: Nastavitev SoC
- 8. korak: Programiranje C HPS
- 9. korak: Digitalni prevzem ADC -ja s kartice
- 10. korak: Izračun FFT
- 11. korak: Prikaz FFT
- 12. korak: Montaža
- Korak: Zvočni učinki
- 14. korak: [NEOBVEZNO] Izdelava čelade
Video: Čelada Spartan Voice Changer: 14 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:02
Zdravo! Smo ekipa štirih študentov Politehnične šole Univerze Sorbonne:
- Louis Buchert
- Bilal Melehi
- Bao Tinh Piot
- Marco Longépé
Ta projekt je realiziran kot del našega študija in ima za cilj prevzeti številna orodja ter prikazati naše teoretske dosežke.
Slavni predmet dobi videz čelade, ki spominja na junaka določene video igre, katere ime bo izgubljeno. Za oblikovalsko stran imamo tudi zaslon, ki prikazuje Fourierjevo transformacijo zvočnega signala, ki prihaja iz zvočnika. Namen teh slušalk je spremeniti glas operaterja v realnem času z uporabo številnih izbirnih učinkov.
Izobraževalni cilji:
- Ujemite zvok iz mikrofona
- Ojačajte, filtrirajte, digitalizirajte signal
- Uresničite FFT signala
- Pokažite ta FFT na zaslonu
- Sinteza signalov
- Iz zvočnika vzemite zvok
- Uresničite učinke na zvok zvoka (odmev, odmev itd.)
Zdaj, ko smo dali ozadje in predstavili projekt, je čas, da ga dobite v roke!
1. korak: Zahteve 1/3 - Strojna oprema
Za uspešno izdelavo čelade potrebujemo nekaj strojne opreme za zagon naprave.
- DE0-Nano-SoC razvojna plošča Terasic + Adafruit TFT LCD zaslon (Arduino)
- Dostop do 3D tiskalnika za izdelavo čelade (če ste študent, ki se približa vaši univerzi, imajo nekateri laboratorije dostopne študentom)
- Računalnik z internetno povezavo in minimalno povezljivostjo (USB, Ethernet). Tudi vaš računalnik mora imeti močan procesor, saj sestavljanje programov na Qsys traja veliko časa.
- (Ni potrebno) Tiskalnik, ki izdeluje tiskana vezja (PCB) iz datotek Gerber za zmanjšanje velikosti vezja + spajkalnik za namestitev komponent na tiskano vezje.
- (Močno priporočljivo): Dobra kava za uživanje v vašem delu z našim Instructable:)
2. korak: Zahteve 2/3 - Komponente za vaše vezje
Tu so komponente, potrebne za vaše vezje:
- Zvočni ojačevalnik razreda Texas Instrument LM386 AB
- BreadBoard
- Komplet moško-moški, moško-ženski kabli
- LM358P digitalno-analogni pretvornik (DAC)
- Zvočnik
- Majhen mikrofon, ki se uporablja v analognem vezju
- Igralni upori od 1 kOhm do 220 kOhm
- Kondenzator 1,5 nF
- Kondenzator 50nF
- Kondenzator 100nF
- Kondenzator 100uF
- Kondenzator 220uF
- x4 Kondenzatorji 10uF
3. korak: Zahteve 3/3 - Programska oprema
Nenazadnje boste potrebovali programsko opremo:
- Quartus 15.1: Lite različica
- Prevajalnik C (na primer gcc)
- Altium za načrtovanje PCB
-
Alterin vgrajen paket SoC za komunikacijo z zemljevidom SoC
- Kiti
4. korak: Vhodno vezje
Zgradimo vezje. Uporabite zgornjo sliko vezja, da jo sestavite na vašo mizo. Videli boste tudi sliko plošče BreadBoard in vezje v njej, da vidite, kako so priključeni zatiči. Celotno vezje se napaja s 5V enosmernim tokom (DC). V ta namen lahko uporabite 5V baterijo s pretvornikom USB-B ali generatorjem funkcij.
Nekaj opomnikov:
- Napajanje 5V in ozemljitev sta povezana na ločenih vodoravnih linijah plošče
- Če želite dve komponenti povezati vzporedno, ju postavite v skupno vrstico plošče
- Če želite povezati 2 serijski komponenti, morajo sestavni deli samo en pin v skupni vrstici plošče.
Ne oklevajte in si oglejte namensko vadnico o tem, kako uporabljati ploščico in nanjo utrditi vezje. Prav tako ne pozabite pozorno prebrati položaja zatiča avdio ojačevalnika LM358P (glejte sliko zgoraj)
5. korak: Izhodno vezje
Čisto enaka navodila kot korak 4. Štirje vhodi: SDI, ne CS, SCK, ne LDAC, so iz vaše plošče DE0-Nano-Soc. Kasneje bomo videli, kako jih ustvariti.
Ne pozabite pozorno prebrati položaja zatičev avdio ojačevalnika LM386 (glejte sliko zgoraj)
6. korak: [NEOBVEZNO] Ustvarjanje tiskanega vezja in komponent za spajkanje
Če imate srečo, da imate tiskalnik na vezju ali ga lahko uporabljate, bomo ustvarili lastno tiskano vezje (PCB). Upoštevajte, da ta korak ni obvezen. Ta korak je sestavljen samo iz premikanja vezja z matične plošče na tiskano vezje.
Potrebovali boste ti dve datoteki GERBER.
Te datoteke so bile narejene na Altiumu. Za tiskanje tiskanega vezja jih uporabite v programski opremi tiskalnika PCB. Ko dobite tiskano vezje, se prepričajte, da je tiskano vezje čisto in da so skladbe pravilno natisnjene.
Zdaj prihaja prava stvar: spajkanje. Zgornji 2 sliki je zemljevid vezja na tiskanem vezju. Vsaka komponenta ima imena (R6, C4, MK1 itd.). Slike v korakih 4 in 5 prikazujejo parametre komponent (upor, prevodnost..). Vsako komponento z matične plošče postavite na tiskano vezje v skladu z njihovimi imeni.
Ko vse spajkate s spajkalnikom, vse komponente preizkusite z voltmetrom, da preverite, ali obstaja kratek stik.
7. korak: Nastavitev SoC
Kar zadeva nastavitev SoC, boste morali v terminalu zagnati nekaj ukazov in skriptov, vključenih v vdelan paket SoC. Če želite to narediti, morate dodati nekaj $ PATH. PATH se v terminalu uporablja za iskanje datoteke v imenikih, ki jih poda pot, ko izvajate ukaz. Če želite to narediti, vnesite naslednjo ukazno vrstico:
izvozi PATH =/cygdrive/c/altera_lite/15.1/quartus/sopc_builder/bin: $ PATH
Nato vnesite ukazno vrstico, da ustvarite glave iz datoteke sof. Datoteko sof dobite tako, da svoj projekt sestavite v Quartusu. Če želite to narediti, vnesite:./generate_header.
8. korak: Programiranje C HPS
V tem delu se moramo zavedati 2 stvari, in sicer prebrati, prebrati vrednost ADC -ja in jo zapisati v SPI.
1. Preberite vrednost ADC -ja
Naslov pomnilnika, v katerem je ADC, ni neposredno dostopen, pravzaprav sistem Linux, ki je prisoten na kartici, določa abstrakcijo pomnilnika. Za resni dostop do naslova ADC bomo uporabili funkcijo mmap.
"h2p_lw_spi_addr = virtual_base + ((brez podpisa dolgo) (ALT_LWFPGASLVS_OFST + SPI_0_BASE) & (brez podpisa dolgo) (HW_REGS_MASK));"
To navodilo omogoča, da se na začetku osnovnega naslova doda odmik, da doseže naslov pomnilnika, dodeljenega ADC -ju, in na nastalem naslovu izvede logiko IN, da se upošteva maskiranje.
Po tem boste morali le razmakniti kazalec v programu, da dobite njegovo vrednost.
2. Vnesite vrednost ADC v SPI
Manipulacija je enaka, tokrat podajamo odmik mmap na naslov, ki ga dodeli SPI. Med pisanjem v SPI tehnična dokumentacija določa, da morate na naslov + 1 zapisati vrednost adc.
"*(h2p_lw_spi_addr+1) = ((0x1 << 12) | *h2p_lw_adc_addr);"
To navodilo vam omogoča pisanje v SPI. Dejansko je bit 4, torej 1 << 12, bit, ki omogoča aktiviranje SPI. Z logičnim OR torej podamo tako aktivacijski bit kot vrednost ADC -ja SPI.
9. korak: Digitalni prevzem ADC -ja s kartice
Najprej boste morali na nadzorni plošči -> Omrežje -> Parmesals Card -nastaviti e -poštni naslov IP vašega računalnika. Izberite ethernetni vmesnik kartice, lastnosti, naslova ipv4 in vnesite fiksni IP, masko itd.
Nato priključite kartico s strani priključka za napajanje s kablom mikro USB. Odprite programer Quartus in zaženite izvoz. Ta manipulacija se ponovi po vsakem izklopu kartice.
Zamenjajte vtični kabel mikro USB, da se tokrat povežete z vtičnico Ethernet. Zdaj se bo s Puttyjem treba povezati s kartico po serijski povezavi. Konfiguracija je vidna na fotografijah, ideja pa je, da zamenjate COM5 s COM, čemur sledi številka, ki jo najdete v upravitelju naprav (z desno miškino tipko kliknite logotip Windows, da ga odprete).
Pritisnite enter, povezani ste.
Podatki za ponovni zagon projekta: - Popravite ethernetni ip, ki ustreza kartici - Vklopite kartico, vsakič, ko vklopite napajanje, morate s "programom" pod četrtino postaviti projekt, sestavljen na kartici. To se naredi prek vrat micro -USB - Za prikaz rezultatov programa uporabljamo več mikro USB, vendar UART - S kitom, konfiguriranim za serijski COM5 (ali 6 urnih gestinarijev) Povežite se s kartico. - Nastavite geslo (passwd) - Nastavite naslov IP ifconfig ethxx IPchoice (IP nedaleč od tistega za eth računalnika) - Ustvarite glavo glede na Qsys z vgrajenim terminalom (izvoz PATH) - make - scp l exec v map - izvedite prog pod kitom
10. korak: Izračun FFT
Za hitro Fourierjevo preoblikovanje v našem programu C bomo uporabili knjižnico, ki jo je napisal Mark Borgerding: Kiss FFT. Knjižnico lahko prenesete tukaj: https://kissfft.sourceforge.net/. Uporaba FFT na signalu je potrebna za spreminjanje in uporabo signalnih učinkov. Lahko služi tudi za prikaz spektra signala.
Prvi korak v vašem programu C je dodelitev pomnilnika za shranjevanje rezultata FFT. Velikost pomnilnika je odvisna od števila točk, uporabljenih za izračun FFT. Bolj ko imate točk, bolj natančen bo FFT. Vendar bo program deloval počasneje in porabil bo več pomnilnika. Upoštevajte, da boste iz funkcije kiss_fft dobili dva niza: vhod in izhod funkcije (cx_in in cx_out)
Ko je naša matrika napolnjena z novimi vrednostmi FFT, tj. Ko je r = Win - 1, obdelujemo FFT. Kar zadeva prikaz, prikazujemo le pozitivni del spektra, saj obstaja simetrija med negativnim in pozitivnim delom.
Kar zadeva vodoravno os, zmanjšujemo najvišje vrednosti za 100*višino/(višino²), da ločimo vrhove glavnih frekvenc.
S sistemskim klicem uspavanja uporabljamo določitev frekvence branja vrednosti ADC. Ta frekvenca je trenutno nastavljena na 1,5 Hz.
11. korak: Prikaz FFT
Na podlagi primera na Adafruit TFT LCD zaslonu, ki je na voljo tukaj: https://www.terasic.com/downloads/cd-rom/de0-nano-s… smo programirali NIOS našega odbora, tako da lahko bere vrednost ADC.
Tako je register ADC v skupni rabi med NIOS in HPS, ker bodo vrednosti ADC uporabljene za prikaz FFT na zaslonu NIOS, te iste vrednosti pa bodo zapisane na SPI, da se bodo izšle iz plošče in na koncu pretvorile prek DAC -a, da dobi analogni signal.
12. korak: Montaža
Skoraj smo končali! Sestaviti boste morali vsak del projekta (vhodno vezje, izhodno vezje in ploščo). Deli v skladu s projektom Quartus priključite na pravilne zatiče.
- Vhodno vezje bo poslalo zvočni signal, ki ga zajame mikrofon, ojačan, filtriran in izravnan.
- Program C, ki je prisoten na kartici, bo prebral vrednosti ADC -ja, kot smo jih videli prej, in jih zapisal v SPI, tako da lahko obnovimo vrednost na GPIO kartice.
- Nato bo izhodni GPIO SPI prenašal informacije, ki jih bo dekodiral naš DAC in jih ojačal s tekom, da bi dosegel zvočnik.
Korak: Zvočni učinki
Edini preostali korak so zvočni učinki.
Razpoložljivi učinki so:
- Visokofrekvenčni filter
- Nizkofrekvenčni filter
- …
Z gumbom lahko preklapljate med učinki. Ta gumb bo spremenil spremenljivko v našem programu C, tako da lahko uporabi pravi učinek.
14. korak: [NEOBVEZNO] Izdelava čelade
Tukaj smo v najbolj ročnem koraku projekta:
- Najprej smo zlepili različne 3D tiskane dele čelade.
- Za zapolnitev vrzeli med lepljenimi kosi smo dodali zaključek z uporabo 3D peresa.
- Vmesne razpoke, napolnjene s peresom in čelado, smo bolj na splošno polirali, tako da je slika dobro ohranjena.
- Čelado smo pobarvali v dveh slojih: prvo v antracitno črni barvi, od blizu, drugo pa v primarno zeleni barvi, da dobimo odtenke temnejše zelene barve.
- Na koncu smo natisnili logotip naše šole ob strani Čelade
Priporočena:
Covid varnostna čelada 1. del: uvod v Tinkercad vezja!: 20 korakov (s slikami)
Covid varnostna čelada 1. del: Uvod v vezja Tinkercad!: Pozdravljeni, prijatelj! V tej seriji iz dveh delov se bomo naučili uporabljati Tinkercadova vezja - zabavno, zmogljivo in izobraževalno orodje za spoznavanje delovanja vezij! Eden najboljših načinov za učenje je, da se učite. Zato bomo najprej zasnovali lasten projekt:
Disko čelada za 3D tiskanje!: 11 korakov (s slikami)
Disko čelada za 3D tiskanje!: Navdihnjena s klasično čelado Daft Punk 'Thomas'. Osvetlite sobo in zavidajte vsem svojim prijateljem s to neverjetno arduinsko disko čelado! Za dokončanje tega projekta boste potrebovali dostop do 3D tiskalnika in spajkalnika
Kolesarska čelada LED: 6 korakov (s slikami)
Kolesarska čelada LED: Tukaj je opisano, kako čeladi s pomočjo prevodne barve dodate varnostne LED diode. Vedno sem izgubljal luči, ki jih prilepite na kolo, in niso poceni ali kakovostne. Materiali: prevodna barva prevodni epoksid 5-minutni epoksid (vroče lepilo za gojene
Klimatizirana kolesarska čelada (izdelana iz recikliranih računalnikov): 5 korakov (s slikami)
Klimatizirana kolesarska čelada (narejena iz recikliranih računalnikov): Ta čelada z ventilatorji nad luknjami sesa zrak iz vaše glave in čutite, da se dvigne po obrazu in ob straneh glave! Zelo dobro za kolesarjenje v sončnih dneh, ko je zelo vroče. LED diode pomagajo tudi pri nočnem kolesarjenju! Vsi deli
Voice Changer Hack za DIY Synths: 9 korakov (s slikami)
Voice Changer Hack za DIY Synths: Za tiste, ki spremljate moje najnovejše "ibles" - vedeli boste, da sem v zadnjem času ustvaril nekaj 555 timerjev. Pred kratkim sem med potovanjem v lokalno skladišče za recikliranje našel otroški menjalnik glasov. To je tip, ko se pogovarjaš z mikrofonom