OTChET_GOTOV_1_laba_tsos 2 (Лабораторные работы)
Описание файла
Файл "OTChET_GOTOV_1_laba_tsos 2" внутри архива находится в папке "Лабораторные работы". Документ из архива "Лабораторные работы", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "управляющие эвм и системы" в общих файлах.
Онлайн просмотр документа "OTChET_GOTOV_1_laba_tsos 2"
Текст из документа "OTChET_GOTOV_1_laba_tsos 2"
Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
Высшего профессионального образования
«Московский государственный технический университет имени Н. Э. Баумана»
(МГТУ им. Н.Э. Баумана)
Факультет «Информатика и системы управления»
Кафедра «Компьютерные системы и сети»
Лабораторная работа №1
по предмету
Управляющие ЭВМ и системы
Руководитель,
К.т.н,доц. ____________Андреев А.М.
Исполнители,
Студ.гр. ИУ6-83_____Б. С. Романчиков,
Студ.гр. ИУ6-83_____А. А. Кочетков,
Студ.гр. ИУ6-83_____Д. Э. Трибушков
Москва 2015
Цель работы
Изучение свойств дискретного преобразования Фурье. Получение необходимых сведений о практическом применении дискретного преобразования Фурье и теоремы Котельникова. Знакомство с пакетом MATLAB.
Задание 1
Используя функцию построения графиков в пакете MATLAB, проиллюстрируйте утверждение 2 раздела 1.4.
Указание. Постройте в одной системе координат несколько синусоид, частоты которых удовлетворяют соотношению из утверждения 2 раздела 1.4 для некоторой заданной частоты дискретизации и покажите, что при дискретизации любой из этих синусоид с соответствующей частотой дискретизации получатся одни и те же отсчеты.
В отчете подпишите на графике частоту каждой синусоиды и покажите, что все частоты отличаются на целое число частот дискретизации.
Решение:
plot ([0:0.01:1], sin (2*pi*2*[0:0.01:1]));
hold on
plot ([0:1/3:1], sin (2*pi*1*[0:1/3:1]), 'o');
plot ([0:0.01:1], sin (2*pi*10*[0:0.01:1]));
plot ([0:0.01:1], sin (2*pi*(-2)*[0:0.01:1]));
hold off
Задание 2
Зайдите в раздел help пакета MATLAB и выясните, как работает функция randn.
Создайте сигнал «шум» + «синусоида» и отобразите его во временной области. Мощность шума должна быть такой, чтобы синусоиду единичной амплитуды различить было невозможно (для этого вполне достаточно значений, возвращаемых функцией randn по умолчанию).
Выполните дискретное преобразование Фурье (ДПФ) полученного сигнала. На графике ДПФ синусоида заданной частоты должна быть видна. Определите настоящую частоту этой синусоиды, считая известной частоту дискретизации.
В отчете должны быть графики сигнала во временной и в частотной области. Нужно привести листинг вводимых команд и доказательство того, что на графике ДПФ отображена именно та частота, которую мы задавали изначально (используйте формулу из утверждения 3 раздела 1.5)
Решение.
Частота синусоиды f, число отсчетов N и частота дискретизации fs
f = 100; N = 800; fs = 400;
Функция синусоиды (100 Гц):
signal = sin ([0:1/fs:N/fs] * 2 * pi * f);
Шум:
noise = randn(1, length(signal));
Зашумленный сигнал:
noisy_signal = signal + noise;
Построим графики сигнала с шумом и без (рисунок 5):
plot([0:1/fs:N/fs], signal); // синий график
hold on
plot([0:1/fs:N/fs], noisy_signal); // красный график
Выполним дискретное преобразование Фурье (ДПФ) полученного сигнала (рисунок 6):
plot (abs (fft (noisy_signal) ) )
Определим настоящую частоту этой синусоиды, считая известной частоту дискретизации:
на рисунке 6 наблюдаются явные пики в точках k1 = 200 Гц и k2 = 600 Гц. Рассчитаем только для k1. Тогда настоящая частота синусоиды:
f = k1 * fs / N = 200 * 400 / 800 = 100 Гц.
Задание 3
Задайте частоты f1, f2 и fs ( fs > 2 * max (f1,f2) ). Создайте сигнал, равный сумме двух синусоид частот f1 и f2 и произведите дискретизацию этого сигнала с частотой fs.
Нужно в соответствии с заданными частотами f1, f2 и fs подобрать такое минимальное количество отсчетов N, чтобы пики на графике ДПФ, соответствующие f1 и f2, были хорошо различимы. При этом можете просматривать соответствующий график во временной области.
Шаблон, который полезен при выполнении задания, следующий:
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2); (1)
plot ([0:N],diskr);
plot(abs(fft(diskr)));
В отчете должны быть графики, показывающие, как с увеличением N пики (отсчеты), соответствующие частотам f1 и f2, постепенно становятся всё более различимыми. На последнем графике, используя формулу из утверждения 3 раздела 1.5, докажите, что эти пики соответствуют именно тем синусоидам, которые были введены.
Примечание. Если вам кажется, что результаты ДПФ выглядят неточно, поменяйте N на число, являющееся целой степенью двойки (128, 256 и т.п.). Это связано с тем, что ДПФ вычисляется с помощью алгоритма Fast Fourier Transform – быстрого преобразования Фурье.
Решение
f1= 50; f2=100; fs = 210; N=500;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
f1= 50; f2=100; fs = 800; N=500;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
f1= 50; f2=100; fs = 800; N=50;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; f2=100; fs = 800; N=25;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; f2=100; fs = 800; N=30;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; f2=100; fs = 800; N=40;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; f2=100; fs = 800; N=28;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; f2=100; fs = 800; N=27;
diskr=sin([0:1/fs:N/fs]*2*pi*f1)+ sin([0:1/fs:N/fs]*2*pi*f2);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
Задание 4
Задана синусоида частоты f и количество отсчетов N. Меняя частоту дискретизации fs, добейтесь того, чтобы дискретное преобразование Фурье показывало верный результат. Покажите, что при «пересечении» частоты 2*f результат меняется на прямо противоположный (если был правильный, то становится неправильным и наоборот)
В отчете должны быть два графика: один соответствует выполнению условия теоремы Котельникова, а другой – его невыполнению. Докажите эти факты для каждого из графиков. Покажите, что ДПФ для одной синусоиды, дискретизованной с разными частотами fs, дает разные результаты. Причем одно из ДПФ должно давать верные результаты, когда частота дискретизации fs удовлетворяет условиям теоремы Котельникова, а другое – неверные – для частоты fs, которая не удовлетворяет условиям теоремы Котельникова.
Решение:
f1= 50; fs = 200; N=300;
diskr=sin([0:1/fs:N/fs]*2*pi*f1);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;
f1= 50; fs = 40; N=300;
diskr=sin([0:1/fs:N/fs]*2*pi*f1);
plot ([0:N],diskr);
hold on;
plot(abs(fft(diskr)));
hold on;