Obsah:
- Krok 1: Požiadavky 1/3 - Hardvér
- Krok 2: Požiadavky 2/3 - Komponenty pre váš obvod
- Krok 3: Požiadavky 3/3 - Software
- Krok 4: Vstupný obvod
- Krok 5: Výstupný obvod
- Krok 6: [VOLITEĽNÉ] Vytvorenie plošných spojov a spájkovacích súčiastok
- Krok 7: Nastavenie SoC
- Krok 8: Programovanie C HPS
- Krok 9: Digitálne získanie ADC z karty
- Krok 10: Výpočet FFT
- Krok 11: Zobrazenie FFT
- Krok 12: Zostavenie
- Krok 13: Zvukové efekty
- Krok 14: [VOLITEĽNÉ] Výroba prilby
Video: Prilba Spartan Voice Changer: 14 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
Ahoj! Sme tím 4 študentov z polytechnickej školy Sorbonnskej univerzity:
- Louis Buchert
- Bilal Melehi
- Bao Tinh Piot
- Marco Longépé
Tento projekt je realizovaný ako súčasť našich štúdií a jeho cieľom je vziať do ruky množstvo nástrojov a demonštrovať naše teoretické úspechy.
Slávny predmet má podobu prilby, ktorá pripomína hrdinu určitej videohry, ktorej meno sa stratí. Čo sa týka dizajnu, máme tiež obrazovku, ktorá zobrazuje Fourierovu transformáciu zvukového signálu vychádzajúceho z reproduktora. Účelom tejto náhlavnej súpravy je zmeniť hlas operátora v reálnom čase pomocou niekoľkých voliteľných efektov.
Vzdelávacie ciele:
- Zachyťte zvuk z mikrofónu
- Zosilnenie, filtrovanie, digitalizácia signálu
- Realizujte FFT signálu
- Ukážte tento FFT na obrazovke
- Syntéza signálu
- Vytlačte zvuk z reproduktora
- Realizujte efekty na zvukový zvuk (dozvuk, ozvena atď.)
Teraz, keď sme dali pozadie a predstavili projekt, je čas ho dostať do rúk!
Krok 1: Požiadavky 1/3 - Hardvér
Na úspešné zostavenie vašej prilby budeme potrebovať určitý hardvér na spustenie zariadenia.
- Vývojová doska DE0-Nano-SoC od spoločnosti Terasic + Adafruit TFT LCD obrazovka (Arduino)
- Prístup k 3D tlačiarni, aby bola helma (Ak ste študentom univerzity, presuňte sa bližšie k svojej univerzite, v niektorých je pre študentov k dispozícii laboratórium)
- Počítač s internetovým pripojením a minimálnym pripojením (USB, Ethernet). Váš počítač tiež musí mať silný procesor, pretože kompilácia programov na serveri Qsys trvá veľa času.
- (Nevyžaduje sa) Tlačiareň, ktorá vyrába dosky plošných spojov (PCB) zo súborov Gerber s cieľom zmenšiť veľkosť obvodu + spájkovačku, aby sa komponenty dali na dosku plošných spojov.
- (Dôrazne odporúčané): Dobrá káva, aby ste si mohli vychutnať prácu s naším návodom:)
Krok 2: Požiadavky 2/3 - Komponenty pre váš obvod
Tu sú komponenty potrebné pre váš obvod:
- Zvukový zosilňovač triedy Texas Instrument LM386 AB
- BreadBoard
- Sada káblov samec-samec, samec-samica
- LM358P prevodník digitálneho signálu na Analoh (DAC)
- Rečník
- Malý mikrofón používaný v analogickom obvode
- Herná sada rezistorov od 1 kOhm do 220 kOhm
- Kondenzátor 1,5nF
- Kondenzátor 50nF
- Kondenzátor 100nF
- Kondenzátor 100uF
- Kondenzátor 220uF
- x4 kondenzátory 10uF
Krok 3: Požiadavky 3/3 - Software
V neposlednom rade budete potrebovať softvér:
- Quartus 15.1: Lite verzia
- Kompilátor C (napríklad gcc)
- Altium pre návrh DPS
-
Altera vstavaná sada SoC na komunikáciu s mapou SoC
- Tmel
Krok 4: Vstupný obvod
Postavme obvod. Pomocou vyššie uvedeného obrázku obvodu ho zostavte na doske. Uvidíte tiež obrázok BreadBoard a obvod vo vnútri, aby ste videli, ako sú piny prepojené. Celý obvod je napájaný 5 V jednosmerným prúdom (DC). Na to môžete použiť 5V batériu s prevodníkom USB-B alebo generátorom funkcií.
Niektoré pripomienky:
- Napájanie 5V a uzemnenie sú spojené na oddelených horizontálnych líniách nepájivej dosky
- Ak chcete paralelne pripojiť 2 komponenty, vložte ich do spoločného radu nepájivého poľa
- Ak chcete pripojiť 2 sériové komponenty, komponenty musia mať iba jeden kolík v spoločnom rade nepájivého poľa.
Neváhajte si pozrieť špecializovaný návod, ako používať nepájivú dosku a postaviť na ňu obvod. Nezabudnite si tiež pozorne prečítať polohu pinov zvukového zosilňovača LM358P (pozri obrázok vyššie)
Krok 5: Výstupný obvod
Úplne rovnaké pokyny ako v kroku 4. Štyri vstupy: SDI, nie CS, SCK, nie LDAC, pochádzajú z vašej dosky DE0-Nano-Soc. Neskôr uvidíme, ako ich vygenerovať.
Nezabudnite si pozorne prečítať polohy pinov zvukového zosilňovača LM386 (pozri obrázok vyššie)
Krok 6: [VOLITEĽNÉ] Vytvorenie plošných spojov a spájkovacích súčiastok
Ak máte to šťastie, že vlastníte tlačiareň s plošnými spojmi alebo ju môžete používať, vytvoríme si vlastnú dosku s plošnými spojmi (PCB). Tento krok je voliteľný. Tento krok pozostáva iba z presunu vášho obvodu z dosky na dosky plošných spojov.
Budete potrebovať tieto 2 súbory GERBER.
Tieto súbory boli vytvorené na serveri Altium. Použite ich v softvéri tlačiarne PCB na vytlačenie dosky plošných spojov. Akonáhle získate dosku s plošnými spojmi, uistite sa, že je čistá a že sú stopy správne vytlačené.
Teraz prichádza skutočná ponuka: Spájkovanie. 2 obrázky vyššie sú mapou obvodu na DPS. Každý komponent má svoj názov (R6, C4, MK1 atď.). Obrázky v krokoch 4 a 5 ukazujú parametre komponentov (odpor, vodivosť..). Umiestnite každý komponent z vašej dosky na dosku plošných spojov podľa ich názvov.
Akonáhle ste spájkovali všetko s vašou spájkovačkou, vyskúšajte všetky súčiastky voltmetrom a skontrolujte, či nedošlo k skratu.
Krok 7: Nastavenie SoC
Pokiaľ ide o nastavenie SoC, budete musieť v termináli spustiť niektoré príkazy a skripty, ktoré sú súčasťou vstavanej sady SoC. Na to budete musieť pridať nejaký $ PATH. PATH sa používa v rámci terminálu na vyhľadávanie súborov v adresároch zadaných cestou, keď spustíte príkaz. Ak to chcete urobiť, zadajte nasledujúci príkazový riadok:
export PATH =/cygdrive/c/altera_lite/15.1/quartus/sopc_builder/bin: $ PATH
Potom zadajte príkazový riadok a vygenerujte hlavičky zo súboru sof. Softvérový súbor získate zostavením projektu na Quartuse. Ak to chcete urobiť, zadajte:./generate_header.
Krok 8: Programovanie C HPS
V tejto časti si musíme uvedomiť 2 veci, a to čítať, prečítať hodnotu ADC a napísať ju do SPI.
1. Prečítajte si hodnotu ADC
Adresa pamäte, v ktorej je ADC obsiahnutý, nie je priamo prístupná, v skutočnosti linuxový systém prítomný na karte nastavuje abstrakciu pamäte. Na skutočný prístup k adrese ADC použijeme funkciu mmap.
"h2p_lw_spi_addr = virtual_base + ((bez znamienka) (ALT_LWFPGASLVS_OFST + SPI_0_BASE) & (bez znamienka) (HW_REGS_MASK));"
Táto inštrukcia umožňuje pridať offset na začiatok základnej adresy, aby dosiahol adresu pamäte pridelenej pre ADC, a vykonať na výslednej adrese logiku A vziať do úvahy maskovanie.
Potom bude už len potrebné dereferovať ukazovateľ v programe, aby sa získala jeho hodnota.
2. Napíšte hodnotu ADC do SPI
Manipulácia je rovnaká, tentoraz dáme mmape ofset, aby pristál na adrese pridelenej SPI. Pri zápise do SPI technická dokumentácia uvádza, že na adresu + 1 musíte napísať hodnotu adc.
"*(h2p_lw_spi_addr+1) = ((0x1 << 12) | *h2p_lw_adc_addr);"
Táto inštrukcia vám umožňuje písať do SPI. Bit 4, teda 1 << 12, je skutočne bit, ktorý umožňuje aktiváciu SPI. S logickým ALEBO preto SPI dávame aktivačný bit aj hodnotu ADC.
Krok 9: Digitálne získanie ADC z karty
V prvom rade budete musieť nastaviť ethernetovú IP adresu počítača pomocou ovládacieho panela -> Sieť -> Parmesals karty. Vyberte ethernetové rozhranie karty, vlastnosti, adresy ipv4 a zadajte pevnú IP adresu, masku atď …
Potom pripojte kartu zo strany napájacieho konektora káblom micro USB. Otvorte programátor Quartus a spustite export. Táto manipulácia sa zopakuje po každom vypnutí karty.
Zmeňte konektorový kábel micro USB, aby ste ho tentoraz pripojili k ethernetovému konektoru. Teraz bude pre Putty potrebné pripojiť sa ku karte sériovým prepojením. Konfigurácia je viditeľná na fotografiách, pričom sa uvažuje o nahradení COM5 za COM a za ním číslo, ktoré nájdete v správcovi zariadení (otvoríte ho pravým kliknutím na logo systému Windows).
Stlačte Enter, ste pripojení.
Informácie o reštartovaní projektu: - Opravte ethernetový ip zodpovedajúci karte - Zapnite kartu, pri každom zapnutí napájania je potrebné do programu Quartus vložiť „program“, ktorý je na karte zostavený. To sa deje prostredníctvom portu micro -USB - Aby sme mohli zobraziť výsledok programu, používame viac mikro USB, ale UART - S tmelom nakonfigurovaným pre sériový COM5 (alebo 6 hodiniek gestinnaire periph) Pripojte ku karte. - Nastaviť heslo (passwd) - Nastaviť IP adresu ifconfig ethxx IPchoice (IP nie je ďaleko od tej pre et v PC) - Generovať hlavičku podľa Qsys s vloženým terminálom (export PATH) - make - scp l exec v mapa - spustiť pod tmelom prog
Krok 10: Výpočet FFT
Na získanie rýchlej Fourierovej transformácie v našom programe C použijeme knižnicu napísanú Markom Borgerdingom: Kiss FFT. Knižnicu si môžete stiahnuť tu: https://kissfft.sourceforge.net/. Aplikácia FFT na signál je potrebná na úpravu a použitie efektov signálu. Môže tiež slúžiť na zobrazenie spektra signálu.
Prvým krokom vo vašom programe C je alokovanie pamäte na uloženie výsledku FFT. Veľkosť pamäte závisí od počtu bodov použitých na výpočet FFT. Čím viac bodov získate, tým bude FFT výnimočnejší. Program však pobeží pomalšie a zaberie viac pamäte. Všimnite si toho, že z funkcie kiss_fft získate dve polia: vstup a výstup funkcie (cx_in a cx_out)
Akonáhle je naše pole naplnené novými hodnotami FFT, tj. Keď r = Win - 1, spracovávame FFT. Pokiaľ ide o displej, zobrazujeme iba pozitívnu časť spektra, pretože medzi negatívnou a pozitívnou časťou je symetria.
Pokiaľ ide o horizontálnu os, znižujeme vrcholové hodnoty o 100*výšku/(výšku²), aby sme rozlíšili vrcholy hlavných frekvencií.
Na definovanie frekvencie čítania hodnôt ADC používame systémové volanie us usp. Táto frekvencia je v súčasnosti nastavená na 1, 5 Hz.
Krok 11: Zobrazenie FFT
Na základe príkladu, ktorý je uvedený na TFT LCD obrazovke Adafruit, ktorá je k dispozícii tu: https://www.terasic.com/downloads/cd-rom/de0-nano-s… naprogramovali sme NIOS našej rady, aby bol schopný čítať hodnota ADC.
Register ADC je teda zdieľaný medzi NIOS a HPS, pretože hodnoty ADC budú použité na zobrazenie FFT na obrazovke NIOS a rovnaké hodnoty budú zapísané do SPI, aby boli výstupom z dosky a nakoniec boli prevedené DAC na získanie analógového signálu.
Krok 12: Zostavenie
Už sme skoro hotoví! Budete musieť zmontovať všetky časti projektu (vstupný obvod, výstupný obvod a dosku). Podľa projektu Quartus zaistite pripojenie dielov k správnym kolíkom.
- Vstupný obvod vyšle zvukový signál zachytený mikrofónom, zosilnený, filtrovaný a posunutý.
- Program C prítomný na karte bude čítať hodnoty ADC, ako sme to videli predtým, a zapíše to do SPI, aby sme mohli obnoviť hodnotu na GPIO karty.
- Potom výstupný GPIO SPI prenesie informácie, ktoré budú dekódované našim DAC a zosilnené behom, aby sa dostali k reproduktoru.
Krok 13: Zvukové efekty
Jediným krokom zostávajú zvukové efekty.
Dostupné účinky sú:
- Vysokofrekvenčný filter
- Nízkofrekvenčný filter
- …
Medzi efektmi môžete prepínať vďaka tlačidlu. Toto tlačidlo zmení premennú v našom programe C, takže môže použiť správny efekt.
Krok 14: [VOLITEĽNÉ] Výroba prilby
Tu sme v najmanuálnejšom kroku projektu:
- Najprv sme nalepili rôzne 3D tlačené časti prilby.
- Na vyplnenie medzier medzi lepenými kusmi sme pridali povrchovú úpravu pomocou 3D pera.
- Medzery vyplnené perom a helmou sme vyleštili všeobecnejšie, aby potom obraz dobre držal.
- Prilbu sme natreli 2 vrstvami: prvou z antracitovej čiernej, zblízka a druhou primárnou zelenou z ďalšej farby, aby získali odtiene tmavšej zelenej.
- Nakoniec sme na stranu prilby vytlačili logo našej školy
Odporúča:
Ochranná prilba Covid, časť 1: Úvod do obvodov Tinkercad!: 20 krokov (s obrázkami)
Helma Covid Časť 1: Úvod do obvodov Tinkercad !: Dobrý deň, priateľu! V tejto dvojdielnej sérii sa naučíme používať Tinkercad's Circuits - zábavný, výkonný a vzdelávací nástroj na zoznámenie sa s fungovaním obvodov! Jeden z najlepších spôsobov, ako sa učiť, je robiť. Najprv teda navrhneme náš vlastný projekt:
Disko prilba s 3D tlačou !: 11 krokov (s obrázkami)
Disco helma s 3D tlačou!: Inšpirovaná klasickou prilbou Daft Punk „Thomas“. Rozžiarte miestnosť a závidite všetkým svojim priateľom s touto úžasnou disco prilbou poháňanou Arduino! Na dokončenie tohto projektu budete potrebovať prístup k 3D tlačiarni a spájkovačke. Ak chcete
LED cyklistická prilba: 6 krokov (s obrázkami)
LED cyklistická prilba: Tu je návod, ako pridať do bezpečnostnej diódy LED diódy pomocou vodivej farby. Vždy som stratil tie svetlá, ktoré si pripnete na bicykel, a nie sú lacné ani kvalitné. Materiály: vodivý epoxid vodivý náterom, 5-minútový epoxid (horúce lepidlo na pestované
Klimatizovaná cyklistická prilba (vyrobená z recyklovaných počítačov): 5 krokov (s obrázkami)
Klimatizovaná cyklistická prilba (vyrobená z recyklovaných počítačov): Táto prilba s ventilátormi nad otvormi nasáva vzduch z vašej hlavy a môžete cítiť, že sa vám vynára cez tvár a po stranách hlavy! Veľmi dobré na cykloturistiku v slnečných dňoch, keď je veľmi teplo. LED diódy tiež pomáhajú pri nočnom bicyklovaní! Všetky diely
DIY prilba Bluetooth headset: 11 krokov (s obrázkami)
DIY prilba Bluetooth headset: Je to super ľahký a super lacný návod, ako si vyrobiť Bluetooth headset pre svoju motocyklovú prilbu alebo akýkoľvek typ prilby, na ktorej ju chcete používať. To sa teda stáva podľa príslovia „NUTNOSŤ JE STOT“