МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
Звіт
до лабораторної роботи №1
з курсу “Цифрова обробка сигналів і зображень”
тема: “Дискретне перетворення Фур’є та його застосування для спектрального аналізу сигналів”
Львів 2011
Мета роботи – ознайомлення із математичнм апаратом опису сигналів у частотній області, змістом дискретного перетворення Фур’є та його застосуванням для спектрального аналізу реальних сигналів.
Завдання
1.1. Навести аналітичний вираз та обчислити спектральні коефіцієнти періодичного сигналу, одержаного шляхом двонапівперіодного випрямлення гармонічного коливання, із параметрами в таблиці 1.
1.2. Добрати параметри ДПФ для спектрального аналізу періодичного сигналу, щоб забезпечити вимоги в таблиці 1. Показати графіки часової функції сигналу і його спектра.
Таблиця 1
№п/п
Амплітуда,В
Період коливання,с
Кількість спектральних коефіцієнтів
Роздільча здатність по частоті ∆F, Гц
3
3
0,3
8
1/3
MatLab код:
clс; % очищення командного вікна
kmax=8; % к-ть спектральних коефіцієнтів
Tk=0.3; % період коливання
dF=1/3; % роздільча здатність по частоті
T0=Tk/2; % період півколивання
Fmax=kmax*1/T0; % максимальна частота
T=1/dF;
Ts=1/(2*Fmax); % період дискретизації
t=0:Ts:(T-Ts); % формування вектора часу
x=abs(3*sin(2*pi*t/T0)); % аналітичний вираз сигналу
y=fft(x); % застосування ШПФ
f=-Fmax:dF:Fmax-dF; % формування вектора частоти
yy=fftshift(y); % перестановка
xx=abs(yy); % взяття абсолютних значень
figure(1);
t1=0:Ts:T/4; % формування вектора часу для графіка
x1=abs(3*sin(2*pi*t1/T0)); % аналітичний вираз сигналу для графіка
plot(t1,x1); % виведення графіка сигналу
figure (2);
stem (f,xx); % виведення графіка спектру
Часова функція сигналу
/
Спектр сигналу
/
2.1. Навести аналітичний вираз спектральної густини експоненціального імпульсу s(t)=A×exp(-|a×t|), параметри якого наведено в таблиці 2.
2.2. Добрати параметри ДПФ для спектрального аналізу імпульсного сигналу, щоб забезпечити вимоги в таблиці 2. Показати графіки часової функції сигналу і його спектра.
Таблиця 2
№п/п
Амплітуда, В
Стала згасання a, с-1
Частотний інтервал, Гц
Роздільча здатність по частоті ΔF, Гц
3
3
0,3
0,5
0,01
MatLab код:
clс; % очищення командного вікна
a=0.3; % стала згасання
Am=3; % амплітуда сигналу
dF=0.02; % роздільча здатність по частоті
Fmax=0.5; % частотний інтервал
Ts=1/(2*Fmax); % частота дискретизації
T=1/dF;
t=0:Ts:(T-Ts); % формування вектора часу
x=Am*exp(-abs(a*t)); % аналітичний вираз сигналу
y=fft (x); % застосування ШПФ
f=(-1/(2*Ts)):dF:1/(2*Ts)-dF; % формування вектора частоти
yy=fftshift (y); % перестановка
xx=abs(yy); % взяття абсолютних значень
figure (1);
plot (t,x); % виведення графіка сигналу
figure (2);
plot (f,xx);% виведення графіка спектру
Часова функція сигналу
/
Спектр сигналу
/
3.1. Навести аналітичний вираз, що описує спектр дискретних сигналів.
3.2. Добрати параметри ДПФ для спектрального аналізу дискретизованого трикутного вікна, щоб забезпечити вимоги в таблиці 3. Показати графіки часової функції сигналу і його спектра.
Таблиця 3
№п/п
Амплітуда, В
Тривалість імпульсу, с
Кількість спектральних пелюсток
Роздільча здатність по частоті ΔF, Гц
3
3
0,3
3
1/3
MatLab код
clc; %очищення командного вікна
tau=0.3; % тривалість імпульса
Am=3; % амплітуда сигналу
dF=1/3; % роздільча здатність по частоті
k=2; % к-ть спектральних пелюсток
Fmax=k/tau; % максимальна частота
N=Fmax/dF; % к-ть відліків
Ts=1/(2*Fmax); % період дискретизації
T=1/dF;
% блок побудови трикутного імпульса
i=1;
for t=0:Ts:(tau/2)-Ts
x(i)=(2*Am*t)/tau;
i=i+1;
end
for t=tau/2:Ts:tau
x(i)=(-2*Am*t)/tau +2*Am;
i=i+1;
end
for t=tau+Ts:Ts:(T-Ts)
x(i)=t*0;
i=i+1;
end
t=0:Ts:(T-Ts); % формування вектора часу
figure (1);
plot (t,x); % виведення графіка сигналу
y=fft(x); % застосування ШПФ
f=-Fmax:dF:Fmax-dF; % формування вектора частоти
yy=fftshift(y); % перестановка
xx=abs(yy); % взяття абсолютних значень
figure (2);
plot (f,xx); % виведення графіка спектру
Часова функція сигналу
/
Спектр сигналу
/
4.1. Ознайомитись з теоретичним матеріалом.
4.2. Написати програму в середовищі MatLab, яка б реалізувала вказаний алгоритм ШПФ, побудувати графіки спектру заданого сигналу без і з накладанням заданого часового вікна. На підставі аналізу спектру визначити код натиснутої клавіші.
Варіант
Алгоритм ШПФ
Вікно
Сигнал
Назва файлу
3
Проріджування в часі
Ханна
N = 1024
Lab_1_3.mat
MatLab код:
clc; %очищення командного вікна
load D:\Lab_1_3.mat %завантаження файлу
Fs=8000; %частота дискретизації
N=1024; %к-сть вибірок на сагнал
Ts=1/Fs; %час спостереження
df=1/(N*Ts); %частота зміни кроку
y=Signal;
F0=(N-1)*df;
f=(-F0/2):df:F0/2;
w=hann (N); %вікно Ханна
x=fft(y.*w); %ШПФ
xx=fftshift (x); %зворотнє ШПФ
xx=abs(xx); %визначення модуля
t=0:Ts:(N-1)*Ts;
plot (t,Signal);
figure (2);
stem (f,xx);
Сигнал без заданого часового вікна/
Спектр сигналу з накладанням заданого часового вікна
/
В спектрі присутні частоти 1336 Гц та 941 Гц. Отже, натиснута клавіша ‘0’.