Obsah:

Vzorkovacia frekvencia/priradenie aliasu: 8 krokov (s obrázkami)
Vzorkovacia frekvencia/priradenie aliasu: 8 krokov (s obrázkami)

Video: Vzorkovacia frekvencia/priradenie aliasu: 8 krokov (s obrázkami)

Video: Vzorkovacia frekvencia/priradenie aliasu: 8 krokov (s obrázkami)
Video: Aliasing in audio 2024, November
Anonim
Vzorkovacia frekvencia/aliasing je možné inštruovať
Vzorkovacia frekvencia/aliasing je možné inštruovať

Chcel by som vytvoriť vzdelávací projekt, ktorý demonštruje aliasing (a vzorkovacie sadzby) a je určený na umiestnenie na webovú stránku ako zdroj pre študentov, ktorí sa o aliasingu učia.

Krok 1: Rozloženie obvodu

Rozloženie obvodu
Rozloženie obvodu
Rozloženie obvodu
Rozloženie obvodu

Arduino

Arduino je základňou obvodu; podpora servomotora (s namontovaným kolesom snímača) a polohového snímača Hallovho efektu.

-Koleso kodéra: Účelom kolesa snímača je zavesiť magnet, ktorý sa otáča v kruhovej dráhe a vznáša sa nad umiestneným snímačom Hallovho efektu.

-Nastavenie senzora: Senor Hallovho efektu je umiestnený pod dráhou otáčania magnetu, jeho účelom je sledovať prechod magnetu rôznymi rýchlosťami otáčania a rýchlosťou zberu údajov.

----------------------------------------------------------------------------------------------------------

Podkroky:

  1. Získajte materiály:

    Arduino (+ doska na pečenie), vodiče, koliesko kodéra, magnet, snímač Hallovho efektu, servomotor, aplikácia Matlab, aplikácia Arduino

  2. Vyrežte koleso snímača, namontujte ho na servo a zatlačte magnet do otvoru.
  3. Pripojte snímač Hallovho efektu pod dráhu magnetu (môže byť potrebné predĺženie snímača).
  4. Zostavte obvod.

Krok 2: Arduino kód

Arduino kód
Arduino kód

Spôsob zberu údajov

Kód Arduino používa [riadok 41] na zhromažďovanie informácií prostredníctvom senzora Hallovho efektu prostredníctvom portu „Analog In“A0

Spôsob sériového prenosu údajov

  • [Riadok 43] Zobrazí na sériovom monitore premennú „časovač“, ktorá implementuje funkciu „milis ()", aby udržala bežiaci časovač v milisekundách počas trvania programu.
  • [Riadok 45] Na sériovom monitore zobrazuje premennú 'Hallsensor', ktorá implementuje 'analogRead' na získanie informácií zo senzora Hallovho efektu pri spustení programu.

Účel parametra delay ()

Účelom parametra delay () je zmeniť čas odozvy zberu údajov, ktorý je prijatý zo senzora Hallovho efektu

----------------------------------------------------------------------------------------------------------

Podkroky:

Zadajte kód Arduino do aplikácie Arduino

Krok 3: Kód Matlab (súbor HallRT)

Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)
Kód Matlab (súbor HallRT)

- Spôsob prijímania údajov - [Obrázok 3: Riadok 77]

Získavanie údajov z ArduinoStep

----------------------------------------------------------------------------------------------------------

Podkroky:

Vstupný kód Matlab je nad obrázkami, uložte ho do súboru HallRT

Krok 4: Kód Matlab (thresh_analyze)

Kód Matlab (thresh_analyze)
Kód Matlab (thresh_analyze)
Kód Matlab (thresh_analyze)
Kód Matlab (thresh_analyze)

Metóda počítania píkov [Obrázok 2: Riadky 45-53]

  • Použitie príznaku v tomto kóde Matlab je také, že akonáhle slučka for narazí na 'aRval', ktorý je väčší ako vopred nastavený počet hodnôt 'thresh', sa zvýši o jednu, vrchol bude označený hviezdičkami a príkaz if [riadok 45–50] sa preruší, pretože príznak = 1. Druhý príkaz if s príznakom [riadok 51–53] naznačuje, že akonáhle je vrchol dosiahnutý a hodnoty začnú okolo vrcholu klesať, označí sa = 0 a slučka for pokračuje v hľadaní ďalších vrcholov.
  • Parametre/nevyhnutné hodnoty:

    • 'aRval': Zhromaždené údaje zo skúšobnej prevádzky.
    • „mlátiť“: Zvolená hodnota na označenie čohokoľvek nad ním v aRval ako vrchol.

----------------------------------------------------------------------------------------------------------

Podkroky:

Vytvorte druhý súbor Matlab „thresh_analyze“

Krok 5: Skúška 1: Žiadne aliasing

Skúška 1: Žiadne aliasing
Skúška 1: Žiadne aliasing
Skúška 1: Žiadne aliasing
Skúška 1: Žiadne aliasing

Obrázok 1: Skúška údajov pri oneskorení 200 Obrázok 2: Obnoviť analyzované údaje

-Parameter oneskorenia: 200

vrcholy:

Počet = 45

-Počet otáčok za minútu:

45 otáčok za minútu

----------------------------------------------------------------------------------------------------------

Podkroky:

  1. Pripojte Arduino k svojmu prenosnému počítaču.

    Nastavte oneskorenie v kóde Arduino na „200“. Stlačte tlačidlo Nahrať (v ľavom hornom rohu aplikácie)

  2. Prejdite do svojho súboru Matlab HallRT [riadok 37] a zmeňte premennú „delayTime“na 200.
  3. Spustite program HallRT.
  4. Uložte súbor Matlab pod „delay_200“. (Uložiť obrázok)
  5. Načítajte súbor delay_200.mat.
  6. Spustite program thresh_analyze. (Uložiť obrázok)

Krok 6: Skúška 2: Aliasing senzora (i)

Skúška 2: Aliasing senzora (i)
Skúška 2: Aliasing senzora (i)
Skúška 2: Aliasing senzora (i)
Skúška 2: Aliasing senzora (i)

Obrázok 1: Skúška údajov pri oneskorení 50

Obrázok 2: Obnoviť analyzované údaje

Parameter oneskorenia: 50-špičky:

Počet = 52

Počet otáčok za minútu:

52 otáčok/minútu

----------------------------------------------------------------------------------------------------------

Podkroky:

  1. Pripojte Arduino k svojmu prenosnému počítaču.

    Nastavte oneskorenie v kóde Arduino na „50“. Stlačte tlačidlo Nahrať (v ľavom hornom rohu aplikácie)

  2. Prejdite do svojho súboru Matlab HallRT [riadok 37] a zmeňte premennú „delayTime“na 50.
  3. Spustite program HallRT.
  4. Uložte súbor Matlab pod „delay_50“. (Uložiť obrázok)
  5. Načítajte súbor delay_50.mat.
  6. Spustite program thresh_analyze. (Uložiť obrázok)

Krok 7: Skúška 3: Aliasing senzora (ii)

Skúška 3: Aliasing senzora (ii)
Skúška 3: Aliasing senzora (ii)
Skúška 3: Aliasing senzora (ii)
Skúška 3: Aliasing senzora (ii)

Obrázok 1: Skúška údajov pri oneskorení 100 Obrázok 2: Obnoviť analyzované údaje

Parameter oneskorenia: 100-vrcholy:

Počet = 54

Počet otáčok za minútu:

54 otáčok za minútu

--------------------------------------------------------- ---------------------------------------------------------- ------- Podkroky:

  1. Pripojte Arduino k svojmu prenosnému počítaču.

    Nastavte oneskorenie v kóde Arduino na „100“. Stlačte tlačidlo Nahrať (v ľavom hornom rohu aplikácie). '

  2. Prejdite do svojho súboru Matlab HallRT [riadok 37] a zmeňte premennú „delayTime“na 100.
  3. Spustite program HallRT.
  4. Uložte súbor Matlab pod „delay_100“. (Uložiť obrázok)
  5. Načítajte súbor delay_100.mat.
  6. Spustite program thresh_analyze. (Uložiť obrázok)

Krok 8: Skúška 4: Aliasing senzora (iii)

Skúška 4: Aliasing senzora (iii)
Skúška 4: Aliasing senzora (iii)
Skúška 4: Aliasing senzora (iii)
Skúška 4: Aliasing senzora (iii)

Obrázok 1: Skúška údajov pri oneskorení 300 Obrázok 2: Obnoviť analyzované údaje

-Parameter oneskorenia: 300

vrcholy:

Počet = 32

Počet otáčok za minútu:

32 otáčok/minútu

---------------------------------------------------------- ---------------------------------------------------------- ------- Podkroky:

  1. Pripojte Arduino k svojmu prenosnému počítaču.

    Nastavte oneskorenie v kóde Arduino na „300“. Stlačte tlačidlo Nahrať (v ľavom hornom rohu aplikácie)

  2. Prejdite do svojho súboru Matlab HallRT [riadok 37] a zmeňte premennú „delayTime“na 300.
  3. Spustite program HallRT.
  4. Uložte súbor Matlab pod „delay_300“. (Uložiť obrázok)
  5. Načítajte súbor delay_300.mat.
  6. Spustite program thresh_analyze. (Uložiť obrázok)

Odporúča: