Politechnika Wrocławska Wydział Elektroniki...

9
Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów – laboratorium ETD5067L Ćwiczenie 3. Właściwości przekształcenia Fouriera 1. Podstawowe właściwości przekształcenia Fouriera Omówione w ramach niniejszego ćwiczenia właściwości dotyczą m.in. DFT, DTFT. Niech w dalszej części instrukcji zapis X=FT{x } oznacza przekształcenie Fouriera, natomiast zapis x=FT 1 {X} odwrotne przekształcenie Fouriera. Zbiór funkcji bazowych DFT jest zbiorem skończonym (k=0,.., N 1), jak również same funkcje bazowe są funkcjami zdefiniowanymi dla skończonej liczby próbek (n=0, ..., N1). Te dwie właściwości sprawiają, że zarówno ilość operacji niezbędnych do wykonania obliczeń DFT, jak i ilość potrzebnej pamięci są liczbą skończoną. Dyskretne przekształcenie Fouriera DFT jest zatem jedynym przekształceniem, które można obliczyć za pomocą układów cyfrowych. W niniejszym ćwiczeniu badane będą właściwości wszystkich przekształceń Fouriera, jak również unikalne właściwości DFT. W niniejszym ćwiczeniu transformowane będą sygnały rzeczywiste. Oznacza to, że obserwowana będzie symetria amplitudy i antysymetria fazy względem składowej o częstotliwości 0 Hz (składowej stałej) przekształceń Fouriera dla częstotliwości ujemnych. W przypadku transformat sygnałów dyskretnych (DFT i DTFT) występuje dodatkowo okresowość widm (X[k+pN]=X[k] dla DFT i X(+p2)=X() dla DTFT, gdzie p jest liczbą całkowitą). Konsekwencją okresowości i symetrii względem 0 jest symetria i antysymetria względem częstotliwości równej połowie częstotliwości próbkowania( k=N/2 dla DFT i dla DTFT). Rys. 1. Widmo amplitudowe sygnału dyskretnego (widmo DFT jest dyskretne, widmo DTFT jest ciągłe)

Transcript of Politechnika Wrocławska Wydział Elektroniki...

Page 1: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

Politechnika Wrocławska

Wydział Elektroniki Mikrosystemów i Fotoniki

Przetwarzanie sygnałów – laboratorium

ETD5067L

Ćwiczenie 3.

Właściwości przekształcenia Fouriera

1. Podstawowe właściwości przekształcenia Fouriera

Omówione w ramach niniejszego ćwiczenia właściwości dotyczą m.in. DFT, DTFT.

Niech w dalszej części instrukcji zapis

X=FT{x }

oznacza przekształcenie Fouriera, natomiast zapis

x=FT−1

{X}

odwrotne przekształcenie Fouriera.

Zbiór funkcji bazowych DFT jest zbiorem skończonym (k=0,.., N −1), jak również same

funkcje bazowe są funkcjami zdefiniowanymi dla skończonej liczby próbek (n=0, ..., N–1).

Te dwie właściwości sprawiają, że zarówno ilość operacji niezbędnych do wykonania

obliczeń DFT, jak i ilość potrzebnej pamięci są liczbą skończoną. Dyskretne przekształcenie

Fouriera DFT jest zatem jedynym przekształceniem, które można obliczyć za pomocą

układów cyfrowych.

W niniejszym ćwiczeniu badane będą właściwości wszystkich przekształceń Fouriera, jak

również unikalne właściwości DFT. W niniejszym ćwiczeniu transformowane będą sygnały

rzeczywiste. Oznacza to, że obserwowana będzie symetria amplitudy i antysymetria fazy

względem składowej o częstotliwości 0 Hz (składowej stałej) przekształceń Fouriera dla

częstotliwości ujemnych.

W przypadku transformat sygnałów dyskretnych (DFT i DTFT) występuje dodatkowo

okresowość widm (X[k+pN]=X[k] dla DFT i X(+p2)=X() dla DTFT, gdzie p jest liczbą

całkowitą). Konsekwencją okresowości i symetrii względem 0 jest symetria i antysymetria

względem częstotliwości równej połowie częstotliwości próbkowania( k=N/2 dla DFT i

dla DTFT).

Rys. 1. Widmo amplitudowe sygnału dyskretnego (widmo DFT jest dyskretne, widmo DTFT jest ciągłe)

Page 2: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

1.1. Homogeniczność

Wszystkie przekształcenia Fouriera są homogeniczne, tzn. k-krotna zmiana amplitudy

sygnału spowoduje k-krotną zmianę amplitudy transformaty:

a X=FT {a x} .

Podobną zależnością charakteryzuje się przekształcenie odwrotne:

a x=FT−1 {a X } .

1.2. Addytywność

Każde przekształcenie Fouriera jest addytywne, tzn. transformata sumy sygnałów jest

równa sumie transformat tych sygnałów:

FT{x1+x2}=FT {x1}+FT {x2} .

Addytywne jest również odwrotne przekształcenie Fouriera:

FT−1

{X1+X2}=FT−1

{X1}+FT−1

{X2} .

Homogeniczność i addytywność świadczą o liniowości przekształceń Fouriera, a można je

udowodnić, korzystając bezpośrednio z definicji transformacji Fouriera .

1.3. Kompresja i ekspansja sygnału

Kompresja sygnału w jednej dziedzinie powoduje jego ekspansję w drugiej dziedzinie,

np. zwężenie sygnału w dziedzinie czasu („przyspieszenie”) spowoduje poszerzenie widma

częstotliwościowego (wystąpienie większych częstotliwości). Dla a=const możemy zapisać:

a

kX

aanxFT

1

Właściwość ta jest prawdziwa dla wszystkich przekształceń Fouriera.

1.4. Właściwości fazowe przekształcenia Fouriera

1.4.1. Wpływ przesunięcia sygnału w dziedzinie czasu na fazę transformaty

Przesunięcie sygnału w czasie nie zmienia amplitudy jego transformaty. Ma natomiast

wpływ na jej fazę – jeśli sygnał zostanie w dziedzinie czasu przesunięty o s próbek, faza

transformaty zmieni się o 2ks/N :

N

kskksnxnx XX

21212

gdzie k=0..N-1 jest indeksem składowej DFT. X1 i X2 są widmami fazowymi sygnałów x1 i

x2.

1.4.2. Rozwinięcie fazy

Kąt fazowy liczby zespolonej jest liczbą z przedziału ; (albo 2;0 ). Niemniej przy

analizie fazy (widma fazowego) transformaty Fouriera przydatne jest często, aby – ze

względu na zachowanie ciągłości widma fazowego – przeciwdziedzina była zbiorem

większym. W tym celu stosuje się rozwijanie fazy (ang. phase unwrapping), polegające na

dodawaniu całkowitych wielokrotności 2 do obliczonych kątów. Dąży się przy tym do tego,

Page 3: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

żeby różnica fazy między kolejnymi punktami transformaty była jak najmniejsza (patrz

rys. 2).

Rys. 2. Widmo fazowe transformaty Fouriera sygnału przesuniętej w czasie delty Kroneckera

(dyskretne dla DFT, ciągłe dla DTFT).

Technika ta jest np. wykorzystywana przy pomiarach interferometrycznych (do pomiarów

odległości większych niż połowa długości fali).

1.5. Przeciek widma

To właściwość dotycząca tylko DFT. Jest związana z faktem, że zbiór funkcji bazowych

DFT jest zbiorem skończonym. W jego skład wchodzą funkcje sinusoidalne i kosinusoidalne

o całkowitej liczbie okresów. Przeciek widma DFT obserwujemy w przypadku, gdy

transformujemy dyskretne funkcje. Problem wynika z faktu, że DFT traktuje transformowany

sygnał jak sygnał okresowy. Jeżeli chcemy transformować sygnały nieokresowe musimy

odpowiednio dobrać długość okresu, czyli liczbę punktów DFT. Można łatwo zauważyć, że

gdy liczba punktów DFT dąży do nieskończoności to DFT przekształca się w transformację

DTFT. Zwiększenie liczby punktów DFT może odbywać się na dwa sposoby.

Można zwiększyć długość analizowanego sygnału. Jeżeli jest to sygnał o nieskończonym

czasie trwania ale asymptotycznie zmierzający do zera, to wyniki DFT będą coraz bardziej

zbieżne z wynikami DTFT. Długość wtedy uzależnia się od założonej dokładności

aproksymacji.

Drugim rozwiązaniem jest dopisanie na końcu sygnału odpowiedniej liczby zer. Jeżeli

sygnał jest sygnałem o ograniczonym czasie trwania, to taki zabieg nie zmienia w sposób

istotny jego właściwości (bo jego wartości w tym czasie są i tak równe zero), a zwiększa

rozdzielczość DFT. Tak zmiana ilości punktów DFT sprawia, że wynik DFT aproksymuje

wynik DTFT.

Ostatnią klasą sygnałów, w przypadku których ujawnia się przeciek DFT, są sygnały

harmoniczne (sygnały sinusoidalne), których częstotliwości nie pokrywają się z

częstotliwościami funkcji bazowych DFT. W DFT częstotliwości f funkcji bazowych

określane są przez numer składowej k i liczbę punktów DFT N za pomocą równania f=k/N.

Jeżeli k=0..N-1, to widać wyraźnie, że nie wyczerpuje to wszystkich możliwych

częstotliwości sygnałów harmonicznych. Jeżeli używamy DFT do analizy jednego sygnału

Page 4: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

harmonicznego, to można tak dobrać liczbę próbek DFT, aby częstotliwość tego sygnału była

jedną z tych ściśle zdefiniowanych częstotliwości (np. f=0.3 to można użyć 1000 punktowej

DFT, wtedy dla k=300 będziemy mieli częstotliwość f=k/N=0.3). Większy problem pojawia

się kiedy analizujemy sygnał składający się z kilku sygnałów harmonicznych. Wtedy dużo

trudniej dobrać liczbę próbek DFT tak, aby w pełni uniknąć zjawiska przecieku (zobacz

rys. 3). Maksymalny przeciek w przypadku sygnałów harmonicznych występuje wtedy, gdy

częstotliwość sygnału znajduje się dokładnie pośrodku między sąsiednimi częstotliwościami

składowych DFT.

Rys. 3. Ilustracja zjawiska przecieku widma DFT. Sygnał x(t) składa się z dwóch sygnałów

harmonicznych. Częstotliwość pierwszego wynosi częstotliwości f1=3/128 Hz, a częstotliwość

drugiego f2=65/256 Hz. Ponieważ użyto 128 punktowej DFT, a częstotliwość próbkowania fs

wynosi 1 Hz, to zjawisko przecieku obserwujemy tylko dla drugiego sygnału harmonicznego. W takim przypadku stosuje się tzw. okienkowanie, które jest operacją mnożenia sygnału

przez specjalnie zdefiniowaną funkcję okna. Okno ma za zadanie zmienić charakter (nie da

się go wyeliminować) przecieku widma w taki sposób, aby pomiar amplitudy sygnałów

harmonicznych był pomiarem bardziej dokładnym. Dokładność pomiaru amplitudy odbywa

Page 5: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

się kosztem rozdzielczości częstotliwościowej widma. Zastosowanie funkcji okna zostanie

omówione dokładniej przy zagadnieniu filtracji SOI w ćwiczeniu 4.

1.6. Modulacja amplitudowa – mnożenie sygnałów

1.6.1. Splot

Splotem sygnałów nazywamy działanie, którego argumentami są dwa sygnały i które

zdefiniowane jest dla sygnałów ciągłych następującym wzorem:

duutxuxtxtxts 2121 *

Dla sygnałów dyskretnych x i y operację wyznaczania n-tej próbki splotu zapisać można

następująco:

yN

k

knxkynynxnz0

*

Długość splotu dwóch sygnałów x, y wynosi Nx+Ny-1, gdzie Nx jest długością sygnału x a Ny

długością sygnału y. Przy obliczaniu splotu należy zwrócić uwagę na to, że kiedy indeksy

sygnałów x i y wychodzą poza dozwolony zakres, to wartości sygnału zastępuje się zerami

(patrz rys. 4).

Rys. 4. Ilustracja działania operacji splotu z=x*y. Trójkąt oznacza operację mnożenia, a koło

dodawania. Można zauważyć, że brakujące próbki sygnału x uzupełniane są zerami (sytuacja

gdy wychodzi się poza dozwolony zakres indeksów tablicy x).

1.6.2. Mnożenie sygnałów a przekształcenie Fouriera

Transformata splotu sygnałów jest iloczynem transformat tych sygnałów:

FT{x1*x2}=FT{x1}FT{x2},

natomiast transformata iloczynu sygnałów jest splotem ich transformat:

FT{x1x2}=FT {x1}*FT{x2}.

Mnożenie dwóch sygnałów jest wykorzystywane m.in. przy modulacji amplitudowej, a

mnożenie transformat przy filtracji sygnałów. Wykorzystuje się tu fakt, że sygnały

harmoniczne moją widma Fouriera w postacie impulsu Diraca (dla Przekształcenie Fouriera i

DTFT) lub impulsu Kroneckera (dla Szeregów Fouriera i DFT). Operacja splotu z impulsem

powoduje przesunięcie sygnału do pozycji impulsu. Dlatego mnożąc dowolny sygnał przez

sygnał harmoniczny o wybranej częstotliwości, przesuwamy widmo sygnału do

częstotliwości położenia impulsów). Należy pamiętać, że dla sygnałów rzeczywistych widmo

jest symetryczne. Sprawia to, że modulacji ulega zarówno część dla częstotliwości dodatnich

jak i dla częstotliwości ujemnych. Jest to szczególnie ważne, jeżeli modulowane sygnały mają

charakter sygnałów pasmowych (patrz rys. 5). Proszę zwrócić uwagę co się stanie jeżeli

częstotliwość sygnału modulującego zacznie się zbliżać do 0.5.

Page 6: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

Rys. 5. Ilustracja właściwości modulacji sygnałem harmonicznym. Sygnał modulowany jest

sygnałem pasmowym i posiada dwie wstęgi odpowiadające fragmentom widma dla

częstotliwości dodatnich i dla częstotliwości ujemnych (kolor niebieski). W trakcie modulacji

obie wstęgi są przesuwane do położenia impulsów sygnału modulującego.

2. Zadania do realizacji

Na zajęciach laboratoryjnych należy rozwiązać 5 podanych poniżej zadań. Za każde

zadanie można otrzymać jeden punkt pod warunkiem, że zostanie ono całkowicie poprawnie

zrealizowane.

Zadanie nr 1

W zadaniu pierwszym należy napisać dwie funkcje. Pierwszą w postaci:

function [t, x]=sin_t(tN, c, N)

Page 7: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

#definicja ciała funkcji endfunction

generującą sinusoidę. x to tablica z kolejnymi wartościami sinusoidy. t to tablica z kolejnymi

wartościami czasu, dla których obliczono wartości sinusoidy. c to częstotliwość sinusoidy w

hercach. Wartości sinusoidy mają być obliczone dla N próbek w równych odstępach czasu,

zaczynając od chwili t=0, a kończąc na chwili t=tN.

Druga funkcja powinna mieć postać:

function [fx]=freq_d(tN, N)

#definicja ciała funkcji endfunction

i zwracać wektor fx częstotliwości składowych DFT, jeśli czas trwania sygnału wynosi tN

sekund, a sygnał po równomiernym próbkowaniu ma N próbek. Wykorzystując funkcję sin_t

i freq_d oraz fft, zaprezentuj zjawisko okresowości widma DFT i przecieku DFT. Funkcja fft

jest wbudowaną funkcją Octave’a do obliczania DFT zespolonego sygnału dyskretnego.

Przykład użycia:

y=fft(x);

żeby uzyskać moduł i fazę transformaty Fouriera, można posłużyć się funkcjami abs i arg. Są

to wbudowane funkcje Octave’a.

Przykład użycia

modY=abs(y);

fazaY=arg(y);

Zadanie nr 2

W zadaniu drugim należy napisać funkcję następującej postaci:

function z=sig_mul(x, y) #definicja ciała funkcji

endfunction

wykonującą mnożenie dwóch sygnałów x[n] i y[n] ( nynxnzNn ,1..0 ).

Wykorzystując funkcję sig_mul należy wykonać mnożenie sygnału Gaussa

2

2

2

)(exp][

s

unnx i sygnału sinusoidalnego (

2sin][ nny ). Sygnał Gaussa można

otrzymać za pomocą wyrażenia: x=exp( - ( [1:N] – u ).^2/2/s^2 ). W tym wyrażeniu N

definiuje ilość próbek sygnału Gaussowskiego, u jest przesunięciem krzywej, a s jest

stopniem rozmycia. Sygnał sinusoidalny należy wygenerować za pomocą funkcji sin_t. Po

obliczeniu sygnału iloczynu, należy zaprezentować wpływ mnożenia na moduł DFT sygnału

Gaussa.

Zadanie nr 3

Zadanie trzecie polega na napisaniu funkcji następującej:

Page 8: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

function [uw_fi]=unwrap_phase(fi) #definicja ciała funkcji

endfunction

która będzie realizować rozwinięcie fazy. Funkcję należy wykorzystać do obserwacji wpływu

przesunięcia sygnału na fazę jego DFT. Przesuwanym sygnałem powinien być impuls

Kroneckera

00

01

ndla

ndlan . Sygnał ten można uzyskać za pomocą wyrażenia:

delta=[1,zeros(1,N-1). N jest długością sygnału. Jeżeli chcemy przesunąć sygnał o 1 próbkę,

to można użyć funkcji shift. Przykład użycia: shift(delta,1) przesuwa jedynkę o 1 pozycję w

prawo.

Zadanie nr 4

W zadaniu czwartym należy napisać funkcję następującej postaci:

function z=sig_conv(x, y) #definicja ciała funkcji

endfunction która będzie realizować splot sygnałów x[n] i y[n]. Zaprezentuj wykres splotu impulsów

prostokątnego z Gaussowskim oraz wykresy modułów DFT sygnałów x i y oraz DFT sygnału

splotu z. Przed obliczeniem transformat sygnałów (z, x, y), należy zwrócić uwagę na to, żeby

wszystkie sygnały miały taką samą ilość próbek i żeby wykresy modułów transformat miały

prawidłowo wyskalowaną oś częstotliwości.

Zadanie nr 5

Do dyspozycji jest sygnał dźwiękowy Wroclaw.wav, który można wczytać do Octave’a za

pomocą wbudowanej funkcji wavread().

Przykład użycia: y=wavread(”D:\\PS\\Wroclaw.wav”). Częstotliwość próbkowania tego

sygnału wynosi 16 kHz. W ramach zadania 5. należy wykonać prawidłową modulację

amplitudową z sygnałem Wroclaw.wav jako sygnałem modulowanym. Do zaliczenia zadania

potrzebne jest wyświetlenie na wspólnym wykresie modułu transformaty Fouriera sygnału

przed i po modulacji z prawidłowo wyskalowaną osią częstotliwości.

Pytania na kartkówkę

1. Oblicz częstotliwość próbkowania sygnału, który trwa 8 sekund i składa się z 9

równomiernie rozłożonych próbek.

2. Dobierz częstotliwość sinusoidy spróbkowanej z częstotliwością fs=10kHz tak, aby

dla 100 punktowej DFT uniknąć zjawiska przecieku.

3. Dobierz częstotliwość sinusoidy spróbkowanej z częstotliwością fs=10kHz tak, aby

dla 100 punktowej DFT zaobserwować maksymalny przeciek.

4. Jak zmieni się faza 30 punktowej DFT sygnału x[n], jeżeli przesuniemy ten sygnał o 3

próbki w prawo?

5. Jaką długość będzie miał splot sygnałów o długości 10 i 30 próbek?

Page 9: Politechnika Wrocławska Wydział Elektroniki …w12.pwr.wroc.pl/ps/instrukcje/Instrukcja_nr_03.pdf · Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie

6. Szerokość widma sygnału spróbkowanego z częstotliwością 10 kHz wynosi 1 kHz.

Jaka jest maksymalna i minimalna częstotliwość, z jaką można cyfrowo modulować

ten sygnał? Naszkicuj sytuację na wykresie i zaznacz szerokość widma i uzasadnij

swoją odpowiedź.