% Вычисление спектра и построение его графиков
T=10; dt=1/10; % Определение интервала времени
df=1/10; Fmax=1/dt; % Определение частотной шкалы
f=-Fmax/2:df:Fmax/2;
t=0:dt:T;
s=exp(-3*t).*cos(10*t); % Задание сигнала
y1=dftsum(s); y1p=fftshift(y1); % Вычисление и сдвиг ДПФ
% Построение графиков сигнала и его спектров
figure(1)
subplot(311), plot(t,s),title('График сигнала');
subplot(312), plot(f,abs(y1p)),title('Амплитудный спектр')
grid on
subplot(313), plot(f,angle(y1p)), title('Фазовый спектр')
grid on
xlabel('частота')
Рис. 4
Видим, что амплитудный спектр, полученный с использованием процедуры ДПФ dftsum(), аналогичен спектру построенному ранее. Так как dftsum() выдает результаты коэффициентов в комплексном виде, то фазовый спектр, полученный в данном пункте, отличается от спектра полученного в пункте 3.
Задание №6: Проведём вычисления и построение графиков спектров сигнала с помощью функции fft().
Файл-сценарий для построения графиков спектров сигнала с помощью процедуры fft()(Приложение № 4 методических указаний):
figure(2)
T=8; % длительность процесса
% Процедура сопоставления преобразования Фурье
% и его вычисления с помощью функции fft()
N=128; % число точек
Ts=T/(N-1); % интервал отсчетов
t=0:Ts:T; % временной интервал
s=exp(-3*t).*cos(10*t); % генерирование импульса
Fmax=1/Ts; % максимальная частота
df=1/T; % частотное разрешение
f=-Fmax/2:df:Fmax/2; % частотная шкала
X=fft(s,N); % БПФ сигнала
Xp=fftshift(X); % частотный сдвиг
A=abs(Xp);
w=2*pi*f;
S=1/2.*(1./(j.*(w-10)+3)+1./(j.*(w+10)+3)); % преобразование Фурье сигнала
% Построение графиков сигнала и амплитудных спектров
subplot(311),plot(t,s),title('График сигнала');
% график сигнала
subplot(312), plot(f,A*Ts),grid on
title('Амплитудный спектр сигнала по fft')
subplot(313), plot(f, abs(S)),grid on
xlabel('Частота')
title('Амплитудный спектр сигнала')
Рис. 5
Y=fftshift(X) - это функция, которая перегруппировывает выходные массивы функций, размещая нулевую частоту в центре спектра.
fft(Х) -это дискретное преобразование Фурье вектора Х.Для матриц ,процедура fft() применяется к каждому столбцу. Для массива размерностью N-D данная процедура применяется на первом не одноэлементном множестве.
Из графиков видно, что амплитудные спектры, полученные с помощью разных процедур, отличаются не значительно. Первый из них построен с помощью функции fft() MatLab 6.0, а второй с использованием аналитических выкладок.
Задание №7: Произведём изучение свойств преобразования Фурье.
Файл-сценарий для иллюстрации свойств преобразования Фурье (Приложение № 5 методических указаний):
% Процедура иллюстрации свойств преобразования Фурье
N = 128; % Длина сигналов
k = 0:N-1;
gamma = -0.5;
g = exp(gamma*k);% g - экспоненциальная функция
h = sin(2*pi*k/(N/2));
figure(1)
plot(k,g,k,h),grid on
% h - синусоидальная последовательность с периодом = N/2
% вычисление преобразований Фурье сигналов
[G,w] = freqz(g,1,512);
[H,w] = freqz(h,1,512);
Рис. 6
% Свойство линейности
alpha = 0.5;
beta = 0.25;
y = alpha*g+beta*h;
[Y,w] = freqz(y,1,512);
% Графики Y и alpha*G+beta*H для проверки их равенства
figure(2), subplot(211),plot(abs(Y)),grid on
subplot(212), plot(abs(alpha*G+beta*H)),grid on
Рис. 7
Из графиков видно, что спектр суммы равен сумме спектров исходных сигналов
% Свойство временного сдвига
n0 = 12; % y2 - последовательность y, сдвинутая на 12 отсчетов
y2 = [zeros([1,n0]) g];
[Y2,w] = freqz(y2,1,512);
G0 = exp(-j*w*n0).*G;
% Графики амплитудных спектров
figure(3)
subplot(211),plot(abs(G0)),grid on
subplot(212),plot(abs(Y2)),grid on
Рис. 8
Из полученных графиков видно, что при осуществлении временного сдвига амплитудный спектр сигнала не меняется.
% Свойство изменения масштаба
a=0.1; % Коэффициент изменения масштаба
g1= exp(gamma*k*a);
% Графики во временной области
figure(4)
plot(k,g,k,g1),grid on
Рис. 9
При данном изменении масштаба скорость спада (убывания) экспоненциальной зависимости уменьшается.
[G,w] = freqz(g,1,512);
G1 = freqz(g1,1,512);
% Графики спектров
figure(5)
subplot(211),plot(w',abs(G)),grid on
subplot(212),plot(w,abs(G1)),grid on
Рис. 10
По графику видно, что изменение длительности сигнала приводит к изменению огибающей спектра.
% Свойство свертки
y5 = conv(g,h);
[Y5,w] = freqz(y5,1,512);
% Графики спектров
figure(6)
subplot(211),plot(abs(Y5)),grid on
subplot(212),plot(abs(G.*H)),grid on
Рис. 11
Свойство свертки показывает, что спектр свертки равен произведению спектров сигналов.
% Теорема Парсеваля
H0 = exp(-j*w*n0).*H;
val1 = sum(g.*conj(h));
val2 = sum(G0.*conj(H0))/512;
% Сравнение val1 с val2
disp('Разность val1-val2 = '),disp(val1-val2)
Разность val1-val2 = 0.0000 - 1.3618i
Выводы: В лабораторной работе по спектральным представлениям непрерывных непериодических сигналов мы изучили преобразование Фурье и его свойства. А так же понятия амплитудного и фазового спектров непрерывных во времени сигналов. В ходе работы были получены амплитудные спектры с помощью аналитических выкладок, с помощью написанной функции dftsum() и функции MatLab – fft(). Сравнив полученные результаты, можно сделать вывод о незначительном отличае в зависимости от используемого метода.
Литература:
1. Голышев Н.В., Щетинин Ю.И. Теория и обработка сигналов.: Уч. пособие.- Новосибирск. Изд-во НГТУ, 1998 - ч.1.
2. Голышев Н.В., Щетинин Ю.И. Задачник-практикум по теории и обработке сигналов.:
учеб. пособие. Новосибирск: Изд-во НГТУ, 2001
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.