Вы находитесь на странице: 1из 8

МИНОБРНАУКИ РОССИИ

федеральное государственное бюджетное учреждение высшего образования


"Омский государственный университет им. Ф. М. Достоевского"
Факультет Компьютерных наук
Кафедра компьютерных технологий и сетей

Отчёт по дисциплине «Цифровая обработка сигналов».


Лабораторная работа №2.
Децимация и интерполяция цифровых сигналов.
16 вариант.

Выполнил: Студент 4 курса


очной формы обучения
группы СПБ-701-О-01
Петренко М.А.

Проверила:
Вахний Т.В.

Омск - 2021
Задание 1. Сформируйте опорный сигнал s(t), представляющий собой
сумму гармонических сигналов с частотами N кГц, N+3 кГц и N+6 кГц
(N = 16, по номеру своего варианта) и амплитудой 1В. Частота
дискретизации равна 1 МГц.
Для того, чтобы сформировать опорный сигнал s(t), представляющий собой
сумму гармонических сигналов с данными частотами, для начала создадим
функции, где будут содержаться “уравнение” с суммами гармонических
сигналов с данными частотами, нам потребуется несколько функции для
выполнения задания: ourFunction для содержания “уравнения” и displaySignal
для отображения графика.

Далее создаем функцию displaySignal:

После того как создали функции, создаем график с использованием двух


функции, упомянутых выше.

Результат графика:
Задание 2. К опорному сигналу добавьте сигнал помехи, состоящий из
гармонических сигналов с частотами 75, 80, 85, 90 и 95 к Гц и
амплитудой 0,5 В.
Для выполнения этого задания, создаем еще одну функцию -
ourFunctionWithInterference, где будет “уравнение” с частотами 75, 80, 85, 90
и 95 к Гц и амплитудой 0,5 В:

И функция displaySignalWithInterference, для отображения графика:

Далее, для удобства, второй график опорного сигнала с помехами поставим


поверх первого графика без помех. (красный график – без помех, синий – с
помехами), добавим строку для второго графика:

Результат:
Задание 3. Число периодов в наблюдаемой реализации (по
максимальной частоте опорного сигнала) – не менее 10 и не более 100.
Проведите расчет количества точек для выбранного (целого) количества
периодов сигнала.
Для реализации расчетов количества точек, воспользуемся функцией
ourFunctionWithInterference дав то же значение новой функции
mainSignalWithInterference:

И создаем код:

В котором переменная discr_rate равна 1000, а переменная t равна 0:dt:1.


В итоге получаем результат:

Задание 4. Постройте спектр сигнала. Укажите полосу частот полезного


сигнала, длительность реализации сигнала, шаг между отсчетами в
частотной и во временной области.
Для построения спектра сигнала воспользуемся двумя функциями:
ourFunction и ourFunctionWithInterference.

Получаем результат:
Графики сигнала без помех не видно, из-за того, что график сигнала с помехи
перекрывает обзор. Поэтому выкладываю без сигнала с помехами:

Замечаем, что при появлении еще большего количества помех - появляется


еще большее количество периодов.
Задание 5. Проведите децимацию сформированного сигнала с шагом 10.
Постройте спектр децимированного сигнала.
Для децимации сигнала с шагом 10, для начала понадобится функция
alterDECIMATION:

А также displaySpectre:

Воспользуемся ранее созданными функциями:

Как помним
А скорость дискретизации – переменная discr_rate = 1000.
Получаем результат:
Задание 6. Пропустите опорный сигнал через цифровой фильтр.
Проведите децимацию сигнала с шагом 10. Покажите на графике спектр
децимированного сигнала после фильтрации.

Где lpfSignalWithInterference = flts(mainSignalWithInterferebce, hz).


А переменная decreased_discr_rate = 100, то есть равен discr_rate/10.
Разница с предыдущим пунктом задания заключается в наличии фильтрации,
посмотрим на результат:

Задание 7. Проведите интерполяцию полученного сигнала с


повышением частоты дискретизации до 2 МГц. Постройте спектр.
С интерполяцией дело проще, разница с созданием спектров
децимированного сигнала, заключается только в том, что для этого не нужно
проводить децимацию. Согласно заданию, поднимем частоту дискретизации
до 2 МГц:

И результат:

Задание 8. Пропустите сигнал через цифровой фильтр, при этом


выберите необходимую частоту среза. Покажите на графике спектр
полученного сигнала после фильтрации. Постройте в одном
графическом окне сигнал до фильтрации и после.
Для signalAfterLPFWithInterf, дадим значение:

Получили результат. Где синий график – до фильтрации, а красный график –


после фильтрации.
Задание 9. Повторите пункт 5-8 с помощью двух каскадов. При этом
оптимальным образом выберите шаги децимации и интерполяции, а
также фильтры защиты от наложения спектра для каждого каскада.