Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Matosn_lab_3.doc
Скачиваний:
0
Добавлен:
02.01.2025
Размер:
528.9 Кб
Скачать

Xlabel("Частота");

ylabel("Амплитуда");

grid on;

hold off

figure

plot(chHann1,'k')

hold on

plot(chHann2,'r')

grid on;

title('Частотная характеристика 2-х соседних каналов (окно Ханнинга)')

Xlabel("Частота");

ylabel("Амплитуда");

function [chan14, chan15, chan16] = freqchr(signal)

f=abs(fft(signal));

chan14=f(14)/512;

chan15=f(15)/512;

chan16=f(16)/512;

end

Рисунок 16 – Частотная характеристика 2-х соседних каналов

Рисунок 17– Частотная характеристика 2-х соседних каналов с окном Хеннинга

  1. Построим частотную характеристику 3-х соседних каналов ДПФ (рис. 18).

fs = 1024;

t=0:1/fs:1-1/fs;

for i = 1:1000

signal = cos(2*pi*(10+i/100)*t);

sigHann = signal.*hann(1024)';

sigBlackman = signal.*blackman(1024)';

sigHamming = signal.*hamming(1024)';

[ch1(i),ch2(i),ch3(i)]=freqchr(signal);

[chHann1(i),chHann2(i),chHann3(i)]=freqchr(sigHann);

[chBlack1(i),chBlack2(i),chBlack3(i)]=freqchr(sigBlackman);

[chHamming1(i),chHamming2(i),chHamming3(i)]=freqchr(sigHamming);

end

figure

plot(ch1,'k')

hold on

plot(ch2,'r')

plot(ch3)

grid on;

title('Частотная характеристика 3-х соседних каналов');

Xlabel("Частота");

ylabel("Амплитуда");

Рисунок 18 – частотная характеристика 3-х соседних каналов

  1. Построим частотные характеристики 3-х соседних каналов ДПФ как в пункте 8 с использованием 3-х различных оконных функций (рис. 19).

figure

subplot(3,1,1)

hold on

plot(chHann1,'k')

plot(chHann2,'r')

plot(chHann3)

title('Частотная характеристика 3-х соседних каналов (окно Ханнинга)');

Xlabel("Частота");

ylabel("Амплитуда");

grid on;

hold off

subplot(3,1,2)

hold on

plot(chHamming1,'k')

plot(chHamming2,'r')

plot(chHamming3)

title('Частотная характеристика 3-х соседних каналов (окно Хэмминга)');

Xlabel("Частота");

ylabel("Амплитуда");

grid on;

hold off

subplot(3,1,3)

hold on

plot(chBlack1,'k')

plot(chBlack2,'r')

plot(chBlack3)

title('Частотная характеристика 3-х соседних каналов (окно Блэкмена)');

Xlabel("Частота");

ylabel("Амплитуда");

grid on;

hold off

Рисунок 19 – 3 канала с различными окнами

Вывод

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

Приложение

clc;

clear;

close all;

% % % Задание 1

fs = 200;

dt = 1/fs;

t = 0:dt:1;

f1=20;

f2=3;

x1=cos(2*pi*f1*t);

x2=4*cos(2*pi*f2*t);

plot(t,x1,t,x2,'LineWidth',2); grid on;

title("Сигналы");

xlabel("Частота");

ylabel("Амплитуда");

legend('x1','x2');

R=abs(fft(x1));

figure;

area(t,R), grid;

title("Амплитудный спектр первого сигнала x1");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

R=abs(fft(x2));

figure;

area(t,R), grid;

title("Амплитудный спектр второго сигнала x2");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

% % Задание 2

x3=x1+x2;

x4=x1.*x2;

R=abs(fft(x3));

figure;

area(t,R), grid;

title("Амплитудный спектр третьего сигнала x3");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

R=abs(fft(x4));

figure;

area(t,R), grid;

title("Амплитудный спектр четвертого сигнала x4");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

% % Задание 3

N=2^7;

t = -1:1/N:1;

y = dirac(t);

idx = y == Inf; % find Inf

y(idx) = 1; % set Inf to finite value

plot(y);

title("Функция Дирака");

xlabel("Частота");

ylabel("Амплитуда");

grid on

figure;

R1=abs(fft(y));

R2=phase(y);

subplot(2,1,1),stem(t,R1);

title("Амплитудный спектр функции Дирака");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

subplot(2,1,2),plot(t,R2);

title("Фазовый спектр функции Дирака");

xlabel("Частота");

ylabel("Фаза");

grid on

y(1,129)=0;

y(1,241)=1;

R1=abs(fft(y));

R2=phase(y);

figure;

subplot(2,1,1),stem(t,R1);

title("Амплитудный спектр функции Дирака");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

subplot(2,1,2),plot(t,R2);

title("Фазовый спектр функции Дирака");

xlabel("Частота");

ylabel("Фаза");

grid on

% % % Задание 4

N=2^7;

t = -1:1/N:1;

y = dirac(t);

idx = y == Inf; % find Inf

y(idx) = 1; % set Inf to finite value

T = 1;

tau = dirac(0); % положение максимума импульса

M = 100; % количество рассматриваемых гармоник

k = 1:M; % номера гармоник

w = 2*pi*k/T; % частоты гармоник

% нулевая гармоника (среднее значение сигнала за период)

c1(1) = tau/T;

c1(2:1+M) = 1/T;

f1(1) = 0;

f1(2:1+M) = w/2/pi; % частоты

figure;

stem(f1,abs(c1),'k.')

axis([0 10 0 1]);

title("Амплитудный спектр функции Дирака");

xlabel("Частота");

ylabel("Модуль Фурье-образа сигнала");

figure;

for i=1:2:7

y(1,129+i)=1;

R1=abs(fft(y));

R2=phase(y);

subplot(4,2,i),area(t,R1), title("Амплитудный спектр");

xlabel("Частота");

ylabel("Амплитуда");

subplot(4,2,i+1),plot(t,R2), title("Фазовый спектр");

xlabel("Частота");

ylabel("Фаза");

end

% % % Задание 5

N=100;

t = 0:1/N:1;

w = 0.04;

j=0;

imp=0;

for i = 1:10

imp =imp+rectpuls(t-j,w);

j=j+0.08;

end

plot(t,imp);

grid on;

title("Прямоугольный сигнал");

xlabel("Частота");

ylabel("Амплитуда");

% % % %

T = 10;

tau = 1; % положение максимума импульса

M = 100; % количество рассматриваемых гармоник

k = 1:M; % номера гармоник

w = 2*pi*k/T; % частоты гармоник

% нулевая гармоника (среднее значение сигнала за период)

c1=zeros(1,101);

c1(1) = tau/2;

for k=1:2:M

c1(k+1) = 2*tau/(k*pi);

end

f1(1) = 0;

f1(2:1+M) =w*pi/2; % частоты

figure

stem(f1,abs(c1),'k.')

title("Амплитудный спектр прямоугольного сигнала");

Соседние файлы в предмете Математические основы теории систем