blogy logo
login PRIHLÁS SA
BLOG deadawp
ČLÁNKY
DISKUSIE
3
SLEDUJETE BLOG
Programátor
deadawp



Vzorkovanie signálu - MATLAB
pridal deadawp 15.1. 2020 o 21:05



Proces vzorkovania signálu má využitie v procese digitalizácie signálu a jeho archivácie. Tento proces si môžeme predstaviť, ako vzorkovanie analógového signálu z mikrofónu, ktorý chceme uložiť na permanentné úložisko počítača - pevný disk, ktorý je samozrejme uspôsobený na uchovávanie digitálnych dát.

Vzorkovanie je najdôležitejšou časťou digitalizačného procesu, nakoľko od vzorkovania závisí kvalita analógového signálu (audio nahrávky, a pod...). Analógový (spojitý) signál je vzorkovaný vzorkovacou frekvenciou (fvz), ktorá je minimálne 2* vyššia ako maximálna frekvencia signálu (fmax).

To zaručuje lepšiu a vernejšiu reprezentáciu signálu v procese kvantovania, kódovania. Obecne platí, čím vyššia je vzorkovacia frekvencia, tým kvalitnejší signál získame. Vyššou vzorkovacou frekvenciou získavame kratšiu periódu vzorkovania (T). Implementáciu vzorkovania signálu som vyhotovil v prostredí MATLAB ako semestrálne zadanie. Opis návrhu a samotné riešenie môže poslúžiť ako odrazový bod pri realizácii podobnej úlohy, zadania.

V mojej implementácii som využil následovné vzorkovacie frekvencie pôvodného signálu:

  • fvz = 2*fmax
  • fvz = 3*fmax
  • fvz = 10*fmax

MATLAB script obsahuje niekoľko premenných, ktoré sú zodpovedné za vygenerovaný analógový signál a vzorkovací proces:

  • Časová oblasť signálu - os X v grafickej reprezentácii (dĺžka v sekundách)
  • Maximálna frekvencia signálu (fmax v Hz)
  • Vzorkovacia frekvencia 1, 2, 3 (fvz = 2*fmax, 3*fmax, 10*fmax).

V časovej oblasti signálu je vygenerovaný signál, ktorý nadobúda hodnoty 0 až fmax. Signál je vykreslený funkciou plot(). Na základe vzorkovacích frekvencií sa určí perióda vzorkovania, jednotlivé body vzorkovania sú vykreslené do grafu funkciou stem(). Dané body sú v následujúcom grafe spojené čiarou, čo vytvára reprodukovaný signál. Kvalita jednotlivých reprodukcií je znateľná. Fvz 2*fmax nereprezentuje pôvodný signál dostatočne verne, nakoľko je vzorkovací čas príliš dlhý.

Pri fvz 3*fmax je reprezentácia vernejšia, avšak nedosahuje parametre pôvodného signálu, je to znateľné najmä na vrcholoch - amplitúdach signálu, ktoré sú orezané. Vzorkovacia frekvencia 10*fmax je najvernejšou reprodukciou pôvodného signálu. Nevýhodou je však viac pamäťového priestoru, ktorý je potrebný na uloženie digitalizovanej audio nahrávky. Pri 10*fmax sa bude vyžadovať 5-násobne viac úložného priestoru na nahrávku v porovnaní s 2*fmax.


Zaujímavosťou programovej implementácie je, že využíva random generátor čísel založený na viacerých faktoroch, čo generuje vstupný signál nepredvídateľne, bez opakovaných priebehov signálu, čo býva viditeľné pri používaní bežného random generátora.

Okrem MATLABU môžete program vykompilovať aj v Octave Online, čo je Cloud IDE kompatibilné s MATLABOM. Na jednoduché vizualizácie je super a taktiež aj na cesty, nakoľko nevyžaduje dlhé spúšťanie, ako napr. MATLAB. Jeho vizualizácie a rýchlosť kompilácie však treba brať s mierou. Toto on-line IDE prístupné cez prehliadač vizualizuje výsledky postupne, teda neuvidíte iba kompletný - výsledný graf, ale po riadkoch, pričom sa na konci vizualizuje kompletne. 

Octave Online vie vizualizovať grafy nad riadok, kde sa píše program, ale obrázok je možné cez záložku Scripts na stránke zobraziť aj vo vyššom rozlíšení, vrátane možnosti exportovania v .png, alebo vektorovom .svg formáte, čo sa môže hodiť najmä do odborných publikácii. 


Programová implementácia v MATLAB-e je dostupná na Githube:
https://github.com/martinius96/MATLAB-scripty/blob/main/Cislicove_spracovanie_signalov/vzorkovanie_signalu.m



Prístupov 12713
Kvalita článku
hlasov 0

PRÍSPEVKY
SLEDOVAŤ
Prosím prihláste sa pre možnosť pridania komentáru.
Prihláste sa, alebo použite facebook login facebook login
ĎALŠIE ČLÁNKY V BLOGU
Oplatí sa teplovodivá pasta z Aliexpress...
[ 4.4.2024] (príspevkov 0)
Recenzia 3D podznačky BEZ KOMPRESE
[ 4.4.2024] (príspevkov 0)
GTA IV fix spustenia na Windowse 10 N
[ 24.3.2024] (príspevkov 0)
RFID DOMINATOR licencia na predaj
[ 4.1.2024] (príspevkov 0)
ATtiny85 Digispark - programovanie, použ...
[ 28.12.2023] (príspevkov 0)
Prečo by som si už nekúpil ESPD-35 2.0 /...
[ 26.12.2023] (príspevkov 0)
ATtiny85 - programovanie Arduino as ISP
[ 19.12.2023] (príspevkov 0)
MasterTherm - webscraper ESP32
[ 25.11.2023] (príspevkov 0)
RFID DOMINATOR 2.0 - rozdiely s 1.0
[ 15.11.2023] (príspevkov 0)
Rozšírená realita (AR) - IoT dashboard
[ 29.10.2023] (príspevkov 0)