модел_лр2
.docx
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
КАФЕДРА ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ И СЕТЕЙ
|
ОЦЕНКА
ПРЕПОДАВАТЕЛЬ
к.т.н., |
|
|
|
В.А. Ненашев |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №2
|
МОДЕЛИРОВАНИЕ И ОБРАБОТКА СИГНАЛОВ В ПАКЕТЕ MATLAB
|
по дисциплине: КОМПЬЮТЕРНАЯ ГРАФИКА |
РАБОТУ ВЫПОЛНИЛА
СТУДЕНТКА ГР. № |
|
|
|
|
|
|
номер группы |
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2021
Цель работы: ознакомиться с методикой моделирования и обработки
периодических дискретных сигналов с помощью пакета MATLAB.
Порядок выполнения работы
Часть 1.
Получить у преподавателя номер варианта
Скачать с Google диска Excel файл записи отсчетов дискретного
сигнала. Перенести отсчеты сигнала из Excel файла в MATLAB. Частота
дискретизации с которой записан сигнал Fs = 210.
Построить график сигнала.
Самостоятельно ознакомиться с функцией fft в справке MATLAB.
Используя БПФ получить амплитудный и фазовый спектры сигнала.
Построить графики амплитудного и фазового спектра.
Примерно определить амплитуды и частоты гармонических
сигналов входящих в сигнал по варианту. Записать их в таблицу.
Часть 2.
Создать m-файл.
Используя таблицу 1 задать значения переменных,
соответствующие значениям двух гармонических сигналов по варианту. Сгенерировать сигнал, представляющий собой сумму двух синусоид и гауссовского шума с нулевым математически ожиданием и СКО
равным единице. Используя БПФ получить амплитудный спектр смеси
гармонических сигналов с шумом. Оценить значения амплитуды и частоты по амплитудному
спектру. Увеличивать СКО шума до 6 с шагом 0.5. Оценивать значения
амплитуды и частоты. Построить график зависимости ошибки определения амплитуды
сигнала в зависимости от СКО шума. Определить эмпирически значение СКО шума, при котором
визуально не получиться определить гармонические составляющие смеси сигнала с шумом. Продемонстрировать данную ситуацию на графике.
Выполнения работы
Вариант 1
Часть 1.
Рисунок 1 – график сигнальной частоты
Рисунок 2 – график амплитудного спектра сигнала
Рисунок 3 – график фазового спектра сигнала
Амплитуды и частоты гармонических сигналов входящих в сигнал:
Частота, Гц |
Амплитуда |
5 |
2,53 |
15 |
2,9 |
39 |
2,9 |
Таблица 1 – входящие сигналы
Листинг программы:
Часть 1
%% часть 1
% uiimport variant1.xlsx
x = variant1(:,1);
y = variant1(:,2);
Fs = 2^10;
figure(1)
plot(x,y)
title('√рафик сигнала') % заголовок
xlabel('¬рем€, с'); ylabel('”ровень'); % надписи вдоль осей
grid on % координатная сетка
n = length(y); % длина сигнала
S = fft(y); % делаем Ѕѕ‘
A = abs(S)*2/n; % получаем амплитудный спектр
A(1) = 2*A(1); % восстанавливаем посто€нную составл€ющую
F = angle(S)*180/pi; % фазовый спектр, переводим из радиант в градусы
fx = (0:n-1)/n*Fs; % значени€ частот
figure(2)
plot(fx,A)
title('јмплитудный спектр сигнала') % заголовок
xlabel('„астота, √ц');
ylabel('”ровень'); % надписи вдоль осей
grid on % координатная сетка
xlim([0 50]) % пределы оси ’ дл€ нагл€дности
figure(3)
plot(fx,F)
title('‘азовый спектр сигнала') % заголовок
xlabel('„астота, √ц');
ylabel('”гол, градус'); % надписи вдоль осей
grid on % координатная сетка
xlim([0 50])
Часть 2
СКО = 1:
Рисунок 4 – График смеси сигналов
Рисунок 5 – амплитудный спектр сигнала
Частота, Гц |
Амплитуда |
100 |
1,8 |
300 |
5,8 |
Зависимости ошибки определения амплитуды сигнала от СКО шума:
СКО |
А1* |
А2* |
Δ1 = |A1-A1*| |
Δ2 = |A2-A2*| |
1 |
1,8 |
5,8 |
0.2 |
0.2 |
1.5 |
2 |
5.91 |
0 |
0,09 |
2 |
2.23 |
6.17 |
0,23 |
0,17 |
2.5 |
1.76 |
5.9 |
0,24 |
0,1 |
3 |
2.18 |
6.52 |
0,18 |
0,52 |
3.5 |
2.31 |
5.53 |
0,31 |
0,74 |
4 |
2.63 |
4.6 |
0,63 |
1,4 |
4.5 |
2.52 |
6.86 |
0,52 |
0,86 |
5 |
- |
5.5 |
- |
0,5 |
5.5 |
- |
5.55 |
- |
0,55 |
6 |
- |
6.4 |
- |
0,4 |
Зависимость ошибки от СКО:
Рисунок 6 – зависимость ошибки от СКО
Рисунок 7 – Амплитудный спектр сигнала
%% часть 2
A1 = 2;
f1 = 100;
A2 = 6;
f2 = 300;
Fs = 1000; % частота дискретизации
N = 100; % количество точек
t = (0:N-1)/Fs; % моменты времени
s1 = A1*sin(2*pi*f1*t); % первый сигнал
s2 = A2*sin(2*pi*f2*t); % второй сигнал
SKO = 1; % — ќ шума
s = s1 + s2 + SKO*randn(size(t)); % смесь сигналов и шума
figure(4)
plot(t,s)
title('√рафик смеси сигналов') % заголовок
xlabel('¬рем€, с'); ylabel('”ровень'); % надписи вдоль осей
grid on % координатная сетка
S = fft(s); % делаем Ѕѕ‘
A = abs(S)*2/N; % получаем амплитудный спектр
A(1) = А(1)/2; % восстанавливаем посто€нную составл€ющую
fx = (0:N-1)/N*Fs; % значени€ частот
figure(5)
plot(fx,A)
title(['јмплитудный спектр сигнала. CKO=',num2str(SKO)]) % заголовок
xlabel('„астота, √ц');
ylabel('”ровень'); % надписи вдоль осей
grid on % координатная сетка
xlim([0 500]) % пределы оси ’ дл€ нагл€дности
sko1 = 1:0.5:4.5;
sko2 = 1:0.5:6;
d1 = [0.2 0 0.23 0.24 0.18 0.31 0.63 0.52];
d2 = [0.2 0.09 0.17 0.1 0.52 0.74 1.4 0.86 0.5 0.55 0.4];
figure(6)
plot(sko1,d1,'o-', sko2,d2,'*-')
title('«ависимость ошибки от — ќ') % заголовок
xlabel('— ќ');
ylabel('ошибка'); % надписи вдоль осей
grid on % координатная сетка
legend('f1','f2') % подпись кривых
Выводы
1. Использование функции fft позволяет получить комплексную частотную характеристику сигнала. Модуль этой функции позволил получить амплитудный спектр сигнала, в котором оценены три гармонические составляющие на частотах 5, 15, 39 Гц.
2. Спектральный анализ позволил достоверно оценивать амплитуду и частоту гармонических составляющих сигнала при СКО<4,5. При СКО > 4.5 гармонику на 100Гц не видно, из-за в шума. При СКО > 14 также теряется вторая гармоника.