• Nie Znaleziono Wyników

DFT II

N/A
N/A
Protected

Academic year: 2021

Share "DFT II"

Copied!
5
0
0

Pełen tekst

(1)

Uniwersytet Zielonogórski

Instytut Sterowania i Systemów Informatycznych

Laboratorium cyfrowego przetwarzania i kompresji danych

DFT II

Cele ćwiczenia

Celem ćwiczenia jest zapoznanie się z dyskretnym przekształceniem Fouriera oraz rozkła- dem sumy sygnałów sinusoidalnych na składowe podstawowe.

Uwagi do ćwiczenia

Cześć wykonanych zadań może być wykorzystana w kolejnych ćwiczeniach, więc propo- nowane jest przechowywanie wyników na potrzeby kolejnych ćwiczeń.

Polecenia w środowisku Matlab

Zapoznać się z następującymi poleceniami w środowisku Matlab: linspace, sin, figure, plot, stem, hold on, hold off, xlabel, ylabel, legend, zeros, length, find, for, end, fft, abs, rand.

Jeśli jest to możliwe, użyj powyższych poleceń do implementacji rozwiązań poniższych zadań.

Przykład pomocniczy do zadań

Poniższy przykład pozwala na wygenerowanie widma amplitudowego sygnału sinusoidal- nego (wykres. 1 oraz 2). Kod można wykorzystać do rozwiązania zadań w ramach tej listy.

Fs = 1600; % Częstotliwości próbkowania

Ts = 1/Fs; % Czas próbkowania

L = 32; % Liczba próbek

t_d = (0:L-1)*Ts; % Oś czasu - wartości dyskretne

t_c = linspace(t_d(1),t_d(end),100); % Oś czasu - wartości ciągłe

A = 10; % Parametry sygnały - Amplituda

f = 50; % Parametry sygnały - Częstotliwości

Phi = 0; % Parametry sygnały - Przesunięcie fazowe

y_c = A*sin(2*pi*f*t_c + Phi); % Sygnał - wartości osi Y y_d = A*sin(2*pi*f*t_d + Phi); % Sygnał - wartości osi Y

% Wykres figure

set(gcf,’DefaultLineLineWidth’,2);

set(gcf,’DefaultAxesFontSize’,14);

plot(t_c,y_c,’-r’) hold on;

stem(t_d,y_d,’s’) hold off

(2)

% DFT

Y = fft(y_d);

Y = abs(Y)/L;

Y(2:end-1) = 2*Y(2:end-1);

f = Fs*(0:(L))/L;

% Wykres figure

set(gcf,’DefaultLineLineWidth’,1);

set(gcf,’DefaultAxesFontSize’,14);

stem(f(1:L/2+1),Y(1:L/2+1),’s’,’LineWidth’,2) grid on

xlabel(’f[Hz]’) ylabel(’Amplituda’) legend(’- d -’)

0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02

−10

−5 0 5 10

Czas[s]

Amplituda

− c −

− d −

Wykres. 1: c – przebieg ciągły, d – przebieg dyskretny

4 6 8 10

Amplituda

− d −

(3)

Zadania do wykonania

1. Wygenerować sumę przebiegów sinusoidalnych według następującego wzoru

y(t) =

N

X

i=0

Aisin(2πfit + φi), (1)

gdzie: i - numer przebiegu, t - czas, Ai - amplituda sygnału sinusoidalnego [V ], fi - częstotliwość sygnału sinusoidalnego [Hz], φi - przesunięcie fazowe sygnału [o] dla wartości podanych w poniższej tabeli z uwzględnieniem: częstotliwości próbkowania

Nr. przebiegu Ai[V ] fi[Hz] φi[o]

1 230 50 10

2 115 100 20

3 75 250 30

4 35 400 40

5 25 800 50

Fs = 2400[Hz], liczba próbek L = 240. Wykonać wykres widma amplitudowego.

Wynikiem ma być wykres 3 oraz 4.

2. Wygenerować przebieg który jest sumą sygnału wygenerowanego w zadaniu 1 oraz sygnału wygenerowanego na podstawie poniższego kodu

Amin = 1;

Amax = 300;

Fmin = 0;

Fmax = 2500;

Aa = Amin + (Amax-Amin).*rand(1,length(t2));

ff = linspace(Fmin,Fmax,length(t2));

yy = Aa.*sin(2*pi*ff.*t2);

a następnie wykonać analizę analogicznie do zadania pierwszego. Wykonać wykres widma amplitudowego. Wynikiem ma być wykres 5 oraz 6.

3. Wykonać analizę sygnału z zadania 2 dla ilość próbek L odpowiednio: 240, 480, 720, 960, 1200, 1440, 1680, 1920, 2160, 2400 poprzez wyznaczenie widma amplitudowego.

Sprawdzić wpływ ilość próbek na wartości widma amplitudowego. Skomentować wyniki.

(4)

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1

−400

−200 0 200 400

Czas[s]

Amplituda

− d −

Wykres. 3: d – przebieg dyskretny

0 200 400 600 800 1000 1200

0 50 100 150 200 250

f[Hz]

Amplituda

− d −

Wykres. 4: d - przebieg dyskretny

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1

−600

−400

−200 0 200 400 600

Czas[s]

Amplituda

− d −

(5)

0 200 400 600 800 1000 1200 0

50 100 150 200 250

f[Hz]

Amplituda

− d −

Wykres. 6: d – przebieg dyskretny

Cytaty

Powiązane dokumenty

Zapoznać się z następującymi poleceniami w środowisku Matlab: linspace, sin, figure, plot, stem, hold on, hold off, xlabel, ylabel, legend, zeros, length, find, for, end3. Jeśli jest

np.sin, np.pi, plt.figure, plt.plot, plt.stem, plt.grid, plt.xlabel, plt.ylabel, plt.legend, np.exp, np.zeros, np.where, np.fft.fft, np.abs, np.random.rand. Jeśli jest to możliwe,

Zapoznać się z następującymi poleceniami w środowisku Matlab: linspace, sin, figure, plot, stem, hold on, hold off, xlabel, ylabel, legend, zeros, length, find, for, end, fft,

Celem ćwiczenia jest zapoznanie się z podstawami analizy systemów środowiska Matlab.. Polecenia w

 toczenie przez skręcenie suportu narzędziowego, stosowane dla stożków krótkich o dużej zbieżności,..  toczenie nożami kształtowymi, stosowane do stożków bardzo krótkich

Proszę wejść na stronę szkoły, są tam zamieszczone materiały w punkcie: e- podręczniki, kliknąć: kształcenie ogólne, potem poszukać w materiałach tematów:.. „Dramat Maryi

Podczas dwóch godzin lekcyjnych proszę zapoznać się z zasadami czytania Pisma Świętego, instrukcją obsługi, tym jak nie czytać Biblii oraz odsłuchać zachęty do czytania

5.2 Zbadać tablicę logiczną dla następujących bramek logicznych NAND (7400), NOR (7402), Ex-OR (7486) mierząc poziomy odpowiednich napięć, a następnie sprawdzając