Скачиваний:
2
Добавлен:
20.12.2023
Размер:
203.19 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА» (СПбГУТ)

Факультет Радиотехнологий связи

Учебная дисциплина «Прикладные методы оптимизации в радиотехнических системах»

ОТЧЁТ

Тема: «ФУРЬЕ-АНАЛИЗ СИГНАЛОВ»

Выполнили:

Приняла:

Санкт-Петербург 2023

Цель работы: изучить основы Фурье-анализа сигналов, освоить методику разложения сигнала в ряд Фурье и проведения их спектрального анализа при помощи компьютерного моделирования в среде Matlab.

Задание 1.

1)

function z=FF(t,T)

N=length(t);

for i=1:N

if t(i)<0; z(i)=0; end;

if (t(i)>=0)&(t(i)<=T/2); z(i)=-1/2; end;

if (t(i)>T/2)&(t(i)<=T); z(i)=1/2; end;

if t(i)>T; z(i)=0; end;

end;

function z=AF(k,T)

dt=T/1000;

t=0:dt:T;

F=FF(t,T).*cos(2*pi*k/T*t);

z=2/T*trapz(t,F);

function z=BF(k,T)

dt=T/1000;

t=0:dt:T;

F=FF(t,T).*sin(2*pi*k/T*t);

z=2/T*trapz(t,F)

СКРИПТ

clear;clc;

Nf=25;

k=1:Nf;

T=1;

A0=AF(0,1);

for k=1:Nf

A(k)=AF(k,T);

B(k)=BF(k,T);

end;

Np=512;

t=0:T/Np:1;

for i=1:Np+1

S=A0/2;

for k=1:Nf

S=S+A(k)*cos(2*pi*k/T*t(i))+B(k)*sin(2*pi*k/T*t(i));

end;

s(i)=S;

end;

plot(t,s); hold on

plot(t,FF(t,T),'k--')

xlabel('t'); ylabel('s')

Рис.1. Разложение прямоугольного импульса в ряд Фурье

при использовании 25 гармоник.

2)

clear;

clc;

t = 0:0.001:0.6;

x = sin(2*pi*50*t)+sin(2*pi*120*t);

s = x + 2*randn(size(t));

subplot(211);

plot(1000*t(1:500),s(1:500))

xlabel('t');

ylabel('s')

title('Зашумленный сигнал')

Y = fft(s,512);

S = Y.* conj(Y) / 512;

f = 1000*(0:256)/512;

subplot(212);

plot(f, S(1:257))

xlabel('f');

ylabel('S')

title('Спектральная функция сигнала')

Рис. 2. Реализация зашумленного сигнала

и его спектральная функция

Задание 2.

1)

Изменяем только 1 функцию, остальное оставляем так же.

function z=FF(t,T)

N=length(t);

for i=1:N

if (t(i)==0);z(i)=0;end

if (t(i)>0)&(t(i)<=T/2); z(i)=1-(2/T)*t(i);end

if (t(i)==T/2); z(i)=1;end

if (t(i)>T/2)&(t(i)<=T); z(i)=2-(2/T)*t(i);end

end

Рис.3 Разложение пилообразного импульса в ряд Фурье

при использовании 25 гармоник.

2)

Изменяем только 1 функцию, остальное оставляем так же.

function z=FF(t,T)

N=length(t);

for i=1:N

if (t(i)>=0)&(t(i)<=T/8);z(i)=0;end

if (t(i)>=T/8)&(t(i)<=3*T/8);z(i)=4*t(i)-1/2;end

if (t(i)>=3*T/8)&(t(i)<=5*T/8);z(i)=1;end

if (t(i)>=5*T/8)&(t(i)<=7*T/8);z(i)=-4*t(i)+7/2;end

if (t(i)>=7*T/8)&(t(i)<=T);z(i)=0;end

end

Рис.4 Разложение трапециевидного импульса в ряд Фурье

при использовании 25 гармоник.

3)

Изменяем только 1 функцию, остальное оставляем так же.

function z=FF(t,T)

N=length(t);

for i=1:N

if (t(i)>=0)&(t(i)<=T/8); z(i)=0; end

if (t(i)>T/8)&(t(i)<=2*T/8); z(i)=1; end

if (t(i)>2*T/8)&(t(i)<=3*T/8); z(i)=0; end

if (t(i)>3*T/8)&(t(i)<=4*T/8); z(i)=1; end

if (t(i)>4*T/8)&(t(i)<=5*T/8); z(i)=0; end

if (t(i)>5*T/8)&(t(i)<=6*T/8); z(i)=1; end

if (t(i)>6*T/8)&(t(i)<=7*T/8); z(i)=0; end

if (t(i)>7*T/8)&(t(i)<=8*T/8); z(i)=1; end

end

Рис.5 Разложение произвольного количества прямоугольных импульсов в ряд Фурье

при использовании 25 гармоник.

Задание 3

clear;

clc;

t = 0:0.001:0.6;

x = sin(7*pi*10*t);

s = x + 0*randn(size(t));

subplot(211);

% Визуализация первых 500 отсчетов сигнала s

plot(1000*t(1:500),x(1:500))

xlabel('t');

ylabel('s')

title('Синусоидальный сигнал')

Y = fft(s,512);

S = Y.* conj(Y) / 512;

f = 1000*(0:256)/512;

subplot(212);

plot(f, S(1:257))

xlabel('f');

ylabel('S')

title('Спектральная функция сигнала')

Рис. 6. Реализация синусоидального сигнала

и его спектральная функция

2)

clear;

clc;

t = 0:0.001:0.6;

x = sin(7*pi*10*t);

s = x + 2*randn(size(t));

subplot(211);

% Визуализация первых 500 отсчетов сигнала s

plot(1000*t(1:500),s(1:500))

xlabel('t');

ylabel('s')

title('Синусоидальный сигнал')

Y = fft(s,512);

S = Y.* conj(Y) / 512;

f = 1000*(0:256)/512;

subplot(212);

plot(f, S(1:257))

xlabel('f');

ylabel('S')

title('Спектральная функция сигнала')

Рис 7. Реализация зашумленного синусоидального сигнала

и его спектральная функция

3)

clear;

clc;

t = 0:0.001:0.6;

x = sawtooth(t,0.5);

s = x + 4*randn(size(t));

subplot(211);

% Визуализация первых 500 отсчетов сигнала s

plot(1000*t(1:500),s(1:500))

xlabel('t');

ylabel('s')

title('Пилообразный, зашумленный сигнал')

Y = fft(s,512);

S = Y.* conj(Y) / 512;

f = 1000*(0:256)/512;

subplot(212);

plot(f, S(1:257))

xlabel('f');

ylabel('S')

title('Спектральная функция сигнала')

Рис 8. Реализация зашумленного пилообразного сигнала

и его спектральная функция

Вывод: В ходе лабораторной работы был изучен метод Фурье-анализа в среде MATLAB, а также построение спектрального анализа сигнала там же.