I9G1S1 Nadolny Michal Lab9


WOJSKOWA AKADEMIA TECHNICZNA
im. Jarosława Dąbrowskiego














Cyfrowe Przetwarzanie Sygnałów

SPRAWOZDANIE Z ĆWICZENIA nr 9













Wykonał: szer. pchor. Michał NADOLNY

Grupa: I9G1S1

ZADANIE
Zaprojektowanie filtru FIR dolnoprzepustowego oraz pasmowo przepustowego.
Dokonanie filtracji sygnału dźwiękowego metodami:
z definicji splotu;
korzystając z DFT;
wykorzystując funkcję conv;
Wyświetlenie charakterystyki amplitudowej filtru.
Zbadać wpływ rzędu filtru na jego jakość.

REALIZACJA ZADANIA

Do realizacji zadania wykorzystałem dźwięk udostępniony przez prowadzącego
dźwięk.wav


Rys. 1 dźwięk do testowania

Pierwszym etapem realizacji było zaprojektowanie filtru dolno i pasmowo
przepustowego. Do tego posłużyłem się wzorem:

Odpowiedź impulsowa tak zaprojektowanego filtru dolnoprzepustowego wygląd
następująco:

Rys. 2 odpowiedź impulsowa filtru dolnoprzepustowego
Zaś filtru pasmowo przepustowego wygląda tak:

Rys. 2 odpowiedź impulsowa filtru pasmowo przepustowego





Następnie wyznaczyłem charakterystyki amplitudowe obu tych filtrów.

Rys. 3 charakterystyka amplitudowa filtru dolnoprzepustowego

Rys. 4 charakterystyka amplitudowa filtru pasmowo przepustowego
Kolejnym etapem wykonania zadania była filtracja sygnału dźwiękowego trzema
metodami:
- z definicji splotu



Wyniki tej operacji przedstawia wykres:

Rys. 5 Filtrowanie sygnału dźwiękowego z definicji splotu
- DFT

Gdzie Hk to transformata sygnału h(k), a Uk to transformata sygnału u(k)
W naszym przypadku sygnał h(k) to dźwięk testowy, a u(k) to filtr
dolnoprzepustowy zaprojektowany w pierwszym punkcie zadania.
Wykres przedstawia dźwięk po wykonaniu filtracji za pomocą DFT:

Rys. 6 Fitracja sygnału dźwiękowego za pomocą DFT
- z wykorzystaniem funkcji conv
Do wykonania filtracji w tym podpunkcie wykorzystałem funkcję wbudowaną w
program MatLab conv(). Jako argumenty tej funkcji użyłem dźwięku testowego oraz
filtru dolnoprzepustowego z punktu pierwszego zadania.
Wykres poniżej przedstawia sygnał dźwiękowy po wykonaniu filtracji za pomocą
funkcji conv()

Rys. 7 filtracja sygnału dźwiękowego za pomocą funkcji conv()
Ostatnią częścią wykonywanego zadania było zbadanie wpływu filtru na jego
jakość. Analizy tej dokonałem na filtrze dolnoprzepustowym. Do badania
przyjąłem następujące rzędy filtru: 5, 15, 75, 200, 1500, 7250.
Otrzymane charakterystyki amplitudowe dla poszczególnych filtrów przedstawiają
wykresy:


Rys. 8 Charakterystyka amplitudowa filtru rzedu 5

Rys. 9 Charakterystyka amplitudowa filtru rzedu 15

Rys. 10 Charakterystyka amplitudowa filtru rzedu 75

Rys. 11 Charakterystyka amplitudowa filtru rzedu 200

Rys. 12 Charakterystyka amplitudowa filtru rzedu 1500

Rys. 13 Charakterystyka amplitudowa filtru rzedu 7250
WNIOSKI
Zadanie laboratoryjne zrealizowałem w 100%. Odpowiedź jaką otrzymałem filtru
dolno i pasmo przepustowego jest prawidłowa. Odbiega od odpowiedzi impulsowej
filtru idealnego, ale tylko i wyłącznie dlatego, że filtry te nie są układami
przyczynowymi co uniemożliwia ich realizację sprzętową. Za sukces realizacji
można uznać to, że rozbieżność między odpowiedziami nie jest duża. Z trzech
metod, najlepszą okazała się filtracja za pomocą funkcji conv(). Sygnał został
poddany filtracji bez obcinania go. Filtracja z definicji splotu spowodowała,
że ostatni fragment dźwięku został wyzerowany. Nie spowodowało to zmiany
słyszalnej, aczkolwiek na wykresie widać brakujący ostatni fragment. Filtracja
za pomocą DFT spowodowała, że początek dźwięku został obcięty i przeniesiony na
koniec sygnału, co również nie jest słyszalne, a jedynie widoczne na wykresie.
Zauważyłem, że badanie rzędu filtru wykazało, że im jest większy rząd filtru,
tym reaguje on szybciej i nie przepuszcza częstotliwości blisko częstotliwości
granicznej. Dzięki temu działanie filtru jest lepsze, oraz spełnia swoje
zadanie, natomiast rząd filtru nie może być duży.


Wyszukiwarka