1_Diskretizatsia_Lab_rabota_tsos_24_09_2 014 (Лабораторные работы), страница 2

2017-12-27СтудИзба

Описание файла

Файл "1_Diskretizatsia_Lab_rabota_tsos_24_09_2014" внутри архива находится в папке "Лабораторные работы". Документ из архива "Лабораторные работы", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "управляющие эвм и системы" в общих файлах.

Онлайн просмотр документа "1_Diskretizatsia_Lab_rabota_tsos_24_09_2 014"

Текст 2 страницы из документа "1_Diskretizatsia_Lab_rabota_tsos_24_09_2 014"

Другими словами, при дискретизации любой синусоиды частоты (f + n*fs) Гц мы получим одни и те же отсчеты. Что это значит?

Допустим, была произведена дискретизация некоторой синусоиды и получены отсчеты. Но теперь, если мы захотим по полученным отсчетам понять, какая непрерывная синусоида имелась до дискретизации, то мы получим неоднозначность. Такой непрерывной синусоидой могла быть любая синусоида, имеющая частоту, отличающуюся на n*fs от истинной частоты (т.е. от той частоты, которую имела на самом деле подвергнутая дискретизации синусоида). В итоге мы можем сказать, что через полученные отсчеты проходит любая непрерывная синусоида, отличающаяся по частоте на n*fs от исходной синусоиды. А так как спектр показывает, синусоиды каких частот содержит сигнал (или коротко, какие частоты содержит спектр), то можно сказать, что все эти синусоиды содержатся в спектре дискретизованного сигнала. Мы получили, что спектр дискретизованного элементарного сигнала (т.е. синусоиды) содержит исходную частоту (которую имел этот непрерывный элементарный сигнал) и бесконечное множество частот (своеобразных «двойников»), отличающихся от исходной частоты на n*fs.

Приведенные пояснения иллюстрируют суть теоремы Котельникова применительно к сигналу, содержащему лишь одну частоту. Сама теорема Котельникова имеет дело со всем набором частот исходного сигнала, но суть остается та же. Следовательно, утверждение 2 в некоторой степени облегчает понимание теоремы Котельникова, поскольку фактически из утверждения 2 следует теорема Котельникова.

Теперь приведем пример, иллюстрирующий правильность утверждения 2.Произведем дискретизацию какого-либо синуса, частота которого удовлетворяет условию (f + n*fs), а затем покажем, что через полученные дискретные отсчеты можно провести еще несколько (а в общем случае – произвольно неограниченное число) синусоид, частоты которых удовлетворяют этому же условию, но для других целых n.

plot ([0:0.01:1], sin (2*pi*1*[0:0.01:1])); (3)

hold on

plot ([0:1/3:1], sin (2*pi*1*[0:1/3:1]), 'o');

plot ([0:0.01:1], sin (2*pi*4*[0:0.01:1]));

plot ([0:0.01:1], sin (2*pi*(-2)*[0:0.01:1]));

Рис. 3. Результат выполнения последовательности команд (3)

В первой строчке (3) мы изображаем непрерывную синусоиду, в третьей производим ее дискретизацию. Четвертые и пятые строчки показывают, что при восстановлении непрерывной синусоиды по дискретным отсчетам мы не можем однозначно сказать, какую синусоиду мы изначально имели.

1.5 Дискретное преобразование Фурье

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

Напомним, что алгоритм ДПФ предполагает преобразование N дискретных отсчетов сигнала во временной области в N комплексных чисел, каждое из которых обозначает некоторую частотную компоненту. С формальными деталями можно познакомиться в теоретическом курсе, а здесь мы попробуем разобраться, как же использовать ДПФ в том, случае, если нам надо просто провести анализ сигнала. Это не так просто, как может показаться сначала, потому что методы ДПФ подразумевают (как мы уже упомянули) использование сложного аппарата функции комплексной переменной, и с ходу, без примеров, порой достаточно сложно интерпретировать полученный результат.

Научимся пользоваться ДПФ и правильно его интерпретировать. Почему это является проблемой? Давайте вспомним, что у нас есть и какова наша цель. У нас есть N дискретных отсчетов некоторого сигнала во временной области. Мы, производя ДПФ, получаем снова N отсчетов, но уже в частотной области и хотим узнать, что же делать, если мы хотим проанализировать частотный состав. Частотный состав чего? Обычно нас интересует не сам дискретизованный сигнал во временной области, а частотный состав исходного непрерывного сигнала, из которого получены отсчеты. Однако тут нас и подстерегает неприятность: мы не знаем, насколько часто мы брали отсчеты при дискретизации. Дискретизованный сигнал – это просто последовательность отсчетов, это функция номера отсчета, и мы не знаем, сколько времени прошло между соседними точками. Когда мы преобразуем эти отсчеты в частотную область, мы по-прежнему не знаем, как соотносится полученный частотный состав дискретизованного сигнала с реальным непрерывным во временной области сигналом. Единственная зацепка – это частота дискретизации. От нее все зависит.

Рассмотрим следующий сигнал:

N= 300; (4)

f=20;

fs=100;

plot ([0:1/fs:N/fs], sin ( [0:1/fs:N/fs] * 2 * pi * f));

Рис. 4. Результат выполнения команды (4)

Это последовательность, состоящая из N = 300 отсчетов. Дискретизован синус частоты f = 20 Гц. Частота дискретизации fs = 100 Гц.

Следующая запись позволяет с помощью алгоритма быстрого преобразования Фурье найти ДПФ этого же сигнала:

plot (abs (fft (sin ( [0:1/fs:N/fs] * 2 * pi * f)))); (5)

Рис. 5. Результат выполнения команды (5)

Утверждение 3. В случае выполнения условия теоремы Котельникова верно следующее соотношение: f/fs = k/N. Здесь f – частота в Гц, соответствующая k-му отсчету, N – общее количество отсчетов ДПФ.

В нашем случае, глядя на частотную область, видим пики, соответствующие k1=60 и k2=240. Посчитаем соответствующие f:

f1 = k1*fs/N = 60 * 100 / 300 = 20 Гц.

f2 = k2*fs/N = 240 * 100 / 300 = 80 Гц.

К сожалению, ДПФ не может различить одинаковые по модулю «положительные» и «отрицательные» частоты. Это значит, что тот же результат, что и при выполнении команды 5, мы бы получили, введя следующее:

plot (abs (fft (sin ( [0:0.01:3] * 2 * pi * (-20)))); (6)

Здесь, говоря терминами ЦОС (с физической точки зрения никаких отрицательных частот конечно не существует), f = -20, что, в соответствии с утверждением 2 раздела 1.4 о неразличимости частот (f + fs*n) означает, что в спектре частота f = -20 начинает периодически повторяться, следовательно, при n=1 f = -20 + 100 * 1 = 80.

Кроме того, из неразличимости «противоположных» частот следует, что график ДПФ является симметричным относительно вертикальной оси в точке нуль.

В общем случае нам нужно анализировать часть графика ДПФ, находящуюся в диапазоне частот [0; f=fs/2], что с учетом утверждения 3 соответствует диапазону отсчетов [0; k=N/2].

Когда хотят упростить описание частотной оси (или оси отсчетов), говорят о «долях частоты Найквиста», fn = fs/2. Тогда рассматриваемый отрезок [0; fs/2] превращается в отрезок [0; 1], и мы можем оперировать с десятичными числами.

Приложение 2. Простейшие присваивания и построение графиков в пакете MATLAB

2.1. Главное окно MATLAB

Рис. 6. Окно MATLAB

По умолчанию окно MATLAB (далее – Матлаб) состоит из трех основных полей, которые занимают большую часть экрана: поле, в котором отображаются используемые в данный момент переменные и их значения (поле 1), поле истории команд (поле 2)и поле командной строки (поле 3).

Работа в Матлабе в основном осуществляется в командной строке: вводим команду, нажимаем enter, видим результат.

Начнем с элементарных операций; по ходу дела будем разбираться более подробно.

2.2. Простейшие присваивания

Присваивание переменной может производиться по-разному.

x=10; (7)

Если ввести команду (7), а затем нажать enter, то переменной x присвоится значение 10, после чего поле командной строки перейдет обратно в режим ожидания ввода команды. Так происходит всегда: набор команды, ввод команды клавишей enter, реакция Матлаба, затем можно вводить следующую команду.

Если в конце команды не ставить точку с запятой, то в командной строке отобразится отчет о выполненной операции.

y=0:0.8:2*pi; (8)

В команде (8) переменная y – это вектор (одномерный массив) чисел. 0 и 2*pi – это пределы изменения значений составляющих вектора, 0.8 – шаг изменения. (pi – обозначение константы).

Кроме того, массив можно задать вручную. Следующая команда даст такой же результат, что и (8) (за исключением имени переменной, конечно).

z=[0 0.8 1.6 2.4 3.2 4 4.8 5.6]; (9)

Массивы могут иметь в качестве элементов другие массивы, тогда получим массив большей размерности:

M=[-5 2 3; 5+6j 5.5 0]; (10)

Обратите внимание, что Матлаб оперирует и с комплексными числами.

Вас могло удивить, что для ввода значений во всех случаях (и для одного числа, и для массивов различной размерности) используется оператор =. Это и есть основной принцип работы Матлаба с данными: каждая числовая переменная – это матрица.

В случае (7) – это матрица 1 на 1, (8) и (9) – матрица 1 на 8, в случае (10) – матрица 2 на 3.

Значения введенных переменных всегда можно проверить в поле 1:

Рис. 7. Поле Workspace

2.3. Построение графиков

plot (y, sin(y)); (11)

В данном примере plot строит график по введенному командой (8) вектору y и по sin(y):

Рис. 8. Результат выполнения команды (11)

Первый вектор-аргумент функции откладывается по горизонтальной оси, а второй – по вертикальной. Обратите внимание, что график не выглядит «гладко», и лишь в местах изломов значение по вертикальной оси соответствует sin(y). Между этими точками производится линейная интерполяция. Если мы хотим откладывать только дискретные значения, без линий, нам потребуется необязательный параметр:

plot (y, sin(y), 'x'); (12)

Рис. 9. Результат выполнения команды (12)

Вместо 'x' можно использовать другие символьные параметры:

Рис. 10. Символьные параметры для построения графиков функцией plot

Построим несколько графиков в одной системе координат:

plot (y, cos(y), 'x', [0:0.1:2*pi], cos ([0:0.1:2*pi]), y, sin(y)); (13)

Рис. 11. Результат выполнения команды (13)

Чтобы упростить процесс набора данных в командной строке, рекомендуется использовать комбинации клавиш из таблицы:

Рис. 12. Горячие клавиши Матлаба

Одной из самых полезных команд является «Перелистывание предыдущих команд вверх или вниз для подстановки в строку ввода».

До сих пор при каждом новой команде plot (… …) старое окно с графиком «затиралось» новым. Можно ввести команду hold on, которая позволит строить в одной системе координат несколько графиков, но уже как бы достраивая новые графики поверх и рядом со старыми.

plot(y, cos(y), 'x');

hold on

plot([0:0.1:2*pi], cos ([0:0.1:2*pi])); (14)

plot(y, sin(y));

hold off

grid on

Набор команд (14) дает такой же результат, что и команда (13).

После команды hold off команда plot работает по-прежнему.

Для удобства отображения можно ввести команду grid on после построения графика. Тогда появится координатная сетка.

Рис. 13. Результат выполнения последовательности команд (14)

17


Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее