Главная страница

ыс. А. Б. Сергиенко минобрнауки россии санктПетербургский государственный электротехнический университет лэти им. В. И. Ульянова (Ленина) А. В. Петров а. Б. Сергиенко цифровая обработка сигналов лабораторный практикум


Скачать 1.73 Mb.
НазваниеА. Б. Сергиенко минобрнауки россии санктПетербургский государственный электротехнический университет лэти им. В. И. Ульянова (Ленина) А. В. Петров а. Б. Сергиенко цифровая обработка сигналов лабораторный практикум
Дата06.04.2023
Размер1.73 Mb.
Формат файлаpdf
Имя файлаdsp_labs_2018-1.pdf
ТипПрактикум
#1040607
страница4 из 8
1   2   3   4   5   6   7   8
filter.
Постройте график полученного сигнала с помощью функции stem.
Определите максимальное по модулю значение полученного сигнала и занесите его в табл. 2.2.
5. Анализ транспонированной формы реализации дискретного
фильтра. Структурная схема транспонированнойформы реализации дис- кретного фильтра показана на рис. 2.5. Из схемы видно, что элементы памяти
не образуют линию задержки, как это было в прямой и канонической фор- мах. Поэтому в данном случае необходимо получить графики для всех сигна- лов, проходящих через элементы памяти фильтра.
Проще всего для этого воспользоваться тем фактом, что функция
filter реализует обработку сигнала именно по схеме рис. 2.5, и, кроме того, она предоставляет возможность доступа к внутреннему состоянию фильтра.
Справка
Для доступа к внутреннему состоянию фильтра функция filter использу- ется следующим образом:
[y, s_out] = filter(b, a, x, s_in);
Дополнительный входной параметр s_in задает начальное внутреннее со- стояние, а в дополнительном выходном результате s_out функция возвраща- ет итоговое внутреннее состояние, достигнутое после обработки сигнала x.
Для получения всей истории изменения внутреннего состояния в про- цессе работы фильтра необходимо организовать цикл, в котором через фильтр будут пропускаться отдельные отсчеты сигнала. После обработки каждого отсчета внутреннее состояние фильтра будет сохраняться в виде очередного столбца отведенной для этого матрицы.

29
В приводимом ниже примере кода предполагается, что обрабатываемый сигнал хранится в векторе с именем x.
states = []; % заготовка матрицы внутренних состояний
s = []; % текущее состояние фильтра
for k = 1:length(x)
% обработка одного отсчета с заданием и сохранением
% внутреннего состояния фильтра
[y(k), s] = filter(b, a, x(k), s);
% добавление нового столбца к матрице состояний
states = [states s];
end
По окончании работы цикла вся история изменения внутреннего состоя- ния фильтра будет записана в матрицу states. Разные строки этой матрицы соответствуют разным элементам памяти фильтра, разные столбцы — раз- ным моментам времени.
Постройте в общих координатных осях графики всех внутренних сигна- лов фильтра с помощью функции plot.
Справка
Функция plot при передаче ей матричного параметра строит отдельные гра- фики для всех столбцов матрицы. Поэтому для получения графиков всех внутренних сигналов фильтра матрицу states необходимо транспониро- вать: plot(states').
Определите максимальное по модулю значение внутреннего состояния, достигаемое при работе фильтра, и занесите его в табл. 2.2.
Справка
Функция max при передаче ей матричного аргумента находит максимум для каждого столбца матрицы отдельно. Чтобы найти значение, максимальное для всей матрицы, нужно вызвать функцию max 2 раза либо преобразовать матрицу в один столбец, указав двоеточие в качестве номера элемента:
A_max = max(max(A));
A_max = max(A(:));
6. Получение графиков характеристик фильтра. Вызовите среду ви- зуализации характеристик фильтров (Filter Visualization Tool, FVTool), пере- дав ей векторы коэффициентов фильтра аналогично тому, как это делается при вызове функции filter (приведенная ниже команда набирается в ко- мандном окне MATLAB):

30
fvtool(b, a)
Выбор просматриваемых характеристик и управление параметрами ана- лиза производятся с помощью средств графического интерфейса окна, от- крывающегося после вызова данной функции.
Копирование графиков в буфер обмена производится с помощью коман- ды меню Edit Copy Figure окна среды FVTool.
Получите и перенесите в документ Microsoft Word (в качестве заготовки для отчета) следующие графики:
• АЧХ (Magnitude Response);
• фазочастотная характеристика (ФЧХ; Phase Response);
• групповая задержка (Group Delay Response);
• импульсная характеристика (Impulse Response);
• расположение нулей и полюсов функции передачи на комплексной плоскости (Pole/Zero Plot).
7. Получение аналитической формулы для импульсной характери-
стики фильтра. Разложите функцию передачи фильтра на простые дроби с помощью функции residuez.
Справка
Функция residuez используется следующим образом:
[r, p, k] = residuez(b, a)
Входные параметры: b и a — векторы коэффициентов фильтра (аналогично функции filter).
Выходные результаты: r — вектор вычетов, p — вектор соответствующих им полюсов, k — вектор коэффициентов целой части функции передачи.
Функции передачи используемых в лабораторной работе фильтров имеют одинаковые степени полиномов числителя и знаменателя, поэтому вектор k содержит лишь один элемент.
После вызова функции residuez необходимо вычислить модули и фа- зы полюсов и вычетов (с помощью функций abs и angle соответственно) и занести эти результаты в табл. 2.3. В эту же таблицу нужно занести и значе- ние целой части функции передачи k.
При подготовке отчета по лабораторной работе необходимо получить аналитическую формулу для импульсной характеристики фильтра (см. (2.3),
(2.4)). После получения импульсной характеристики в комплексной форме

31 необходимо выполнить суммирование комплексно-сопряженных пар (2.5), приведя импульсную характеристику к вещественному виду.
8. Подготовка материалов для отчета. В за- вершение работы необходимо скопировать в доку- мент Microsoft Word (в качестве заготовки для отчета) созданный программный код и все полученные гра- фики:
• входной и выходной сигналы фильтра;
• внутренний сигнал фильтра, реализованного в канонической форме;
• внутренние сигналы фильтра, реализованного в транспонированной форме;
• графики характеристик фильтра, полученные в среде FVTool.
Таблица 2.3
Модуль
Фаза, рад
Вычеты
r
1
r
2
r
3
r
4
Полюсы
p
1
p
2
p
3
p
4
Целая часть
k
2.5. Содержание отчета
Отчет должен содержать:
1. Структурные схемы всех трех форм реализации фильтра с подписан- ными числовыми значениями коэффициентов.
2. Созданный в процессе работы программный код, оформленный в виде законченного документа (с заголовками разделов, формулами и коммента- риями к коду).
3. Полученные в ходе работы графики и заполненные таблицы (разме- щаются в соответствующих разделах отчета).
4. Вывод аналитической формулы для импульсной характеристики фильтра.
5. Выводы по результатам работы.
2.6. Контрольные вопросы
1. Оценить по графику ФЧХ групповую задержку, вносимую фильтром в полосе пропускания.
2. Как примерно будет выглядеть график частотной зависимости груп- повой задержки, если изменить ФЧХ фильтра указанным образом?
3. Импульсная характеристика фильтра представляет собой сумму экс- поненциально затухающих синусоидальных колебаний. Исходя из располо-

32 жения нулей и полюсов функции передачи на комплексной плоскости, оце- нить период (в отсчетах) этих синусоидальных колебаний.
4. Как, исходя из расположения нулей и полюсов функции передачи на комплексной плоскости, можно оценить частоту среза ФНЧ?
5. Как будет примерно выглядеть АЧХ фильтра, если добавить пару ну- лей функции передачи в указанных точках z-плоскости?
6. Что произойдет с АЧХ фильтра, если заданным образом изменить расположение полюсов функции передачи на z-плоскости?
7. Что произойдет с импульсной и частотной характеристиками фильт- ра, если в формуле для его функции передачи произвести замену переменной
zz
2
?
8. Что произойдет с импульсной и частотной характеристиками фильт- ра, если у всех полюсов и нулей функции передачи поменять знак: p
i
→ −p
i
,
z
i
→ −z
i
?
9. Что произойдет с импульсной и частотной характеристиками ком- плексного фильтра, если все полюсы и нули функции передачи заменить на комплексно-сопряженные: p
i

*
i
p
,
z
i

*
i
z
?
10. Что произойдет с импульсной и частотной характеристиками фильт- ра, если в формуле для его функции передачи заменить
z
на −
z
?
11. Определить функцию передачи между двумя указанными точками структурной схемы фильтра.
12. Исходя из коэффициентов функции передачи фильтра, пояснить ре- зультаты, полученные при анализе сигналов внутри схемы, соответствующей канонической реализации фильтра.
13. Почему для канонической реализации пиковое значение внутренних состояний оказывается намного больше, чем для прямой схемы?
14. Получить функцию передачи для фильтра, представленного в про- странстве состояний:
2 1
1 3


= 



A
,
1 1
 
=  
 
B
,
[
]
2 1
=
C
, D = 1.
15.
Получить функцию передачи для фильтра, представленного в про- странстве состояний параметрами A, B, C, D, заданными преподавателем.
16. Как изменятся параметры пространства состояний, если внести в структурную схему фильтра указанные преподавателем изменения?

33
3. ДИСКРЕТНОЕ ПРЕОБРАЗОВАНИЕ ФУРЬЕ
3.1. Цели работы
• Расчет дискретного преобразования Фурье (ДПФ) средствами MAT-
LAB.
• Оценка с помощью прямого и обратного ДПФ полосы частот, в кото- рой сосредоточена основная доля энергии сигнала.
• Наблюдение изменений результатов вычисления ДПФ, происходящих при дополнении сигнала нулевыми отсчетами.
• Оценка степени ускорения вычислений за счет алгоритмов быстрого преобразования Фурье (БПФ).
3.2. Теоретические сведения
Дискретное преобразование Фурье — это разновидность преобразова- ния Фурье, специально предназначенная для анализа дискретных сигналов конечной длительности. При этом данное преобразование определено для периодически продолженного сигнала конечной длительности x(k),
k = 0, …, N−1:
(
)
( )
для любого
x k
N
x k
k
+
=
(3.1)
Поскольку сигнал (3.1) является дискретным, его спектр должен быть периодическим с периодом 2π/
T, где T — период дискретизации. Так как этот сигнал является также и периодическим, его спектр должен быть дискретным с расстоянием между гармониками, равным 2π/(NT). Далее, если не оговоре- но иное, предполагается, что период дискретизации равен 1 с.
Прямое и обратное ДПФ рассчитываются по следующим формулам: прямое:
2 1
0
( )
( )
nk
N
j
N
k
X n
x k e
π


=
=

ɺ
,
(3.2) обратное:
2 1
0 1
( )
( )
nk
N
j
N
n
x k
X n e
N
π

=
=

ɺ
Связь ДПФ и спектра дискретного сигнала. Имея один и тот же ко- нечный набор чисел, можно рассчитать либо спектральную функцию этого дискретного сигнала по (1.3), либо его ДПФ по (3.2). Разумеется, возникает

34 вопрос о том, как связаны друг с другом эти 2 спектральных представления, полученные на основе одних и тех же отсчетов сигнала.
Сравнение формул (1.3) и (3.2) показывает, что ДПФ представляет собой просто дискретные отсчеты спектральной функции дискретного сигнала, со- ответствующие частотам
2
n
n N
ω = π
ɶ
рад/отсчет:
2
( )
( )
n N
X n
X
ω= π
=
ω
ɶ
ɺ
ɺ ɶ
(3.3)
По этой причине значения ДПФ иногда называют
спектральными от-
счетами.
Формула (3.3) в сочетании с формулой связи абсолютных и нормиро- ванных частот (
д
(2 )
f
F
=
ω
π
ɶ
) определяет частотную шкалу ДПФ: спек- тральным отсчетам с номерами n = 0, …, N

1 соответствует сетка частот с шагом д
F
N , простирающаяся от нуля почти до частоты дискретизации
(рис. 3.1).
1
N
F
д
2
N
F
д
N
F
д
N-1
F
д
0 0
1 2
N-1
N
f
n
Рис. 3.1. Частотная шкала ДПФ
Из соотношения (3.3) следует еще один важный вывод: если добавить к конечному набору отсчетов некоторое количество нулей, спектральная функция дискретного сигнала (1.3), естественно, не изменится, но ДПФ (3.2) даст большее число спектральных отсчетов, соответствующих частотам, бо- лее тесно расположенным в интервале от нуля до частоты дискретизации.
Свойства ДПФ. В целом свойства ДПФ аналогичны свойствам непре- рывного преобразования Фурье, однако дискретный характер анализируемо- го сигнала привносит некоторую специфику.
Линейность. ДПФ, согласно определению (3.2), является линейной ком- бинацией отсчетов последовательности, поэтому оно подчиняется принципу суперпозиции:
1 2
( )
( )
( )
y k
ax k
bx k
=
+

1 2
( )
( )
( )
Y n
aX n
bX
n
=
+
ɺ
ɺ
ɺ
Задержка.
При задержке сигнала на
k
отсчетов амплитудный спектр не меняется, а фазовый спектр приобретает дополнительное слагаемое, линейно зависящее от номера гармоники и от значения
k
:

35
( )
(
)
y k
x k
k
=
− ∆

2
( )
( )
n
j
k
N
Y n
X n e
π


=
ɺ
ɺ
Симметрия. ДПФ вещественного сигнала обладает свойством симмет- рии:
(
)
(
)
( )
X N
n
X
n
X
n


=
− =
ɺ
ɺ
ɺ
Круговая свертка. Круговой свертке периодических последовательно- стей соответствует произведение их спектров:
1 1
2 0
( )
( )
((
) mod
)
N
n
y k
x n x
k
n
N

=
=



1 2
( )
( )
( )
Y n
X n X
n
=
ɺ
ɺ
ɺ
Равенство Парсеваля. Дискретный аналог равенства Парсеваля записы- вается следующим образом:
( )
1 1
2 2
0 0
1
( )
N
N
k
n
x
k
X n
N


=
=
=


ɺ
Матрица ДПФ. ДПФ является линейным преобразованием, трансфор- мирующим вектор временных отсчетов в вектор такой же длины, содержа- щий отсчеты спектральные. Такое преобразование может быть реализовано как умножение некоторой квадратной матрицы на входной вектор-столбец:
=
y
Ax
,
(3.4) где
A
— матрица преобразования. В случае ДПФ эта матрица имеет вид:
(
)
(
)
(
)
(
)
(
)
2 2
4 2
1 4
8 2
2 1
ДПФ
2 2
2 1
2 1
1 1
1 1
1 1
1 1
j
j
j
N
N
N
N
j
j
j
N
N
N
N
j
N
j
N
j
N
N
N
N
e
e
e
e
e
e
e
e
e
π
π
π




π
π
π




π
π
π


















=












A









Общая формула для элемента матрицы, расположенного в n-м столбце
m-й строки, выглядит так:
(
)
(
)(
)
ДПФ
1 1
,
exp
2
, 1
, 1
m
n
m n
j
m
N
n
N
N




=
− π


≤ ≤




A

36
Вычисление ДПФ путем умножения матрицы на вектор полностью со- ответствует формуле (3.2). Этот метод требует большого количества вычис- лительных операций, поэтому на практике вместо него применяются быст- рые алгоритмы.
Алгоритм быстрого преобразования Фурье. Для вычисления одного коэффициента ДПФ по (3.2) необходимо выполнить N комплексных умноже- ний и сложений. Таким образом, расчет всего ДПФ, содержащего
N коэффициентов, потребует N
2
пар операций «умножение—сложение» (то же самое можно увидеть и из (3.4), представляющей ДПФ как умножение матрицы на вектор). Число операций возрастает пропорционально квадрату размерности ДПФ.
Однако, если N не является простым числом и может быть разложено на множители, процесс вычислений можно ускорить, разделив анализируемый набор отсчетов на части, вычислив их ДПФ и объединив результаты. Такие способы вычисления ДПФ называются быстрым преобразованием Фурье
(БПФ; английский термин — Fast Fourier Transform, FFT) и повсеместно ис- пользуются на практике. Например, при размерности ДПФ, равной степени двойки, широко используется алгоритм Кули—Тьюки (Cooley—Tukey), чис- ло операций в котором пропорционально N log
2
(N).
Растекание спектра. Как уже говорилось, при ДПФ предполагается, что последовательность отсчетов анализируемого сигнала является периодически продолженной вперед и назад во времени. При этом, если значения началь- ных и конечных отсчетов сигнала сильно различаются, при периодическом повторении на стыках сегментов возникают скачки, из-за которых спектр сигнала расширяется.
Это явление, называемое растеканием спектра (spectrum leakage), можно наглядно проиллюстрировать на простейшем примере вычисления спектра дискретного гармонического сигнала:
( )
cos(
),
0, 1,
,
1
x k
A
k
k
N
=
ω + ϕ
=

ɶ

(3.5)
Если анализируемая последовательность содержит целое число перио- дов гармонического сигнала (т. е. если отношение
(2 )
Nω
π
ɶ
является целым числом), то периодически продолженный сигнал представляет собой гармо- нические колебания (без скачков), а подстановка (3.5) в формулу ДПФ (3.2) показывает, что вычисленное ДПФ содержит лишь 2 спектральных отсчета, отличных от нуля:

37
,
,
2 2
( )
,
1
,
2 2
0,
в остальных случаях.
j
j
AN
e
n
N
AN
X n
e
n
N
ϕ
− ϕ
ω

=

π

ω
=



=




π




ɶ
ɺ
ɶ
Таким образом, аналогично спектру непрерывного гармонического сиг- нала, ДПФ отличается от нуля всего для двух значений
n
. Однако если отно- шение
(2 )
N
ω
π
ɶ
не является целым числом, спектр оказывается значительно более богатым. Этому можно дать простое объяснение: в данном случае пе- риодически продолженная последовательность уже не будет являться набо- ром отсчетов непрерывной синусоиды. Поэтому в полном соответствии со свойствами преобразования Фурье в спектре появляются дополнительные со- ставляющие.
−10 0
10 20 30
−1 0
1 0
5 10 15 0
5 10
−10 0
10 20 30
−1 0
1 0
5 10 15 0
5 10
Рис. 3.2. Происхождение растекания спектра: слева — периодически продолженные сигналы, справа — амплитудные спектры одиночных сигналов (штриховые линии) и модули ДПФ (кружки)
Необходимо подчеркнуть, что причиной растекания спектра является именно периодическое продолжение анализируемого сигнала. Спектр оди- ночного фрагмента дискретной синусоиды является периодической непре- рывной функцией частоты. Эта функция имеет лепестковую структуру неза-

38 висимо от того, целое или нецелое число периодов укладывается в анализи- руемом сегменте. Однако дискретный ряд частот (3.3), на которых вычисля- ется ДПФ, может быть по-разному расположен относительно лепестков спек- тральной функции. В случае целого числа периодов все анализируемые час- тоты (кроме двух) попадают как раз в нули между лепестками. При нецелом числе периодов такого не происходит.
Иллюстрация растекания спектра представлена на рис. 3.2, где построе- ны графики периодически продолженных сигналов, а также модули их ДПФ и непрерывных амплитудных спектров одиночных фрагментов синусоиды.
Верхняя пара графиков соответствует отсутствию растекания спектра
(на интервале анализа укладывается ровно 4 периода колебания). Нижние графики демонстрируют растекание спектра (в данном случае
(2 )
8 3
N
ω
π =
ɶ
не является целым числом).
1   2   3   4   5   6   7   8


написать администратору сайта