Спектральное представление периодических сигналов

 

     1 Задание и методические указания

     Выполнить генерацию сигнала и формирование сигнала последовательным суммированием составляющих его спектра в MATLAB для модели сигнала, заданного функцией в интервале и продолженной периодически вне интервала (таблица 1).

 

Таблица 1 ― Варианты задания

Функция График функции Разложение в ряд Фурье
1 y = x при -π< x . При xk π ряд даёт, согласно теореме Дирихле, значение функции, равное 0
2 y =| x | при -π≤ x ≤π
3 y = x при 0≤ x ≤2π
4
5  
6
7 y = x 2 при -π≤ x ≤π
8
9 y = x (π- x) при 0≤ x ≤π и чётно продолжена на (-π, 0)      
10 y = x (π- x) при 0≤ x ≤π и нечётно продолжена на (-π, 0)    
11 y =|sin x | при -π≤ x ≤π    
12 y =cos x при 0< x <π b и нечётно продолжена на (-π, 0)    
13  

Примечание ― Обратить внимание на чётные и нечётные функции.

 

     Отчёт по практическому занятию в электронном виде должен содержать титульный лист, текст программы генерации и графическое представление сигнала, текст программы формирования сигнала последовательным суммированием не менее 8 составляющих его спектра и графические представления сигнала в MATLAB, значения параметров сигнала, выводы о соответствии исходного и сформированного сигналов.

     Методические указания по выполнению практической работы:

     1) изучить лекцию по основам теории сигналов;

     2) сформулировать ответы на контрольные вопросы;

     3) просмотреть рекомендуемую литературу по теме занятия;

     4) выполнить задание;

     5) представить выполненную работу в электронном виде преподавателю на текущем или следующем практическом занятии (не позднее), ответить на контрольные вопросы.

 

     2 Пример выполнения работы

 

     Рассмотрим периодическую последовательность прямоугольных импульсов, у которой интервал между импульсами равен длительности импульсов, т. е. Т =2 t и и q =2. Такой сигнал называется меандром.

     Текст программы генерации одного импульса меандра

                                                                            (1)

с параметрами E =1, t и=1 в интервале от -1 до 1 представлен в таблице 2. Визуализация сигнала представлена на рисунке 1.

 

Таблица 2 ― Текст программы генерации сигнала

Текст программы Комментарии
E=1; %Амплитуда сигнала, В
tu=1;  
t=-1:0.01:1; %Вектор значений аргумента с шагом дискретизации 0.01
ind1=(abs(t)<=tu/2); %Вектор индексов: каждый элемент вектора t, взятый по модулю, сравнивается со значением tu/2, индекс принимает значение 1, если соответствующий элемент массива t по модулю не больше tu/2, в противном случае индекс принимает значение 0
s=E.*ind1; %Вектор значений функции формируется умножением E и ind1: функция принимает значение E в интервале tu/2, вне этого интервала функция принимает значение 0
plot(t,s); % Вывод графика функции
grid on; % Создание сетки на графике

 

 

Рисунок 1 ― Прямоугольный импульс меандра

 

     Формула ряда Фурье меандра:

.           (2)

     Частичные суммы ряда (2) вычисляются по программе в Matlab (таблица 3). Сформированные сигналы показаны на рисунке 2. С увеличением числа гармоник форма сигнала приближается к меандру.

 

Таблица 3 ― Текст программы формирования меандра последовательным суммированием составляющих его спектра

Программа Комментарии
N=8; % Переменной N присваивается значение 8. Имя переменной=Выражение. Число гармоник в спектре сигнала равно 8. Знак; после некоторого выражения блокирует вывод результата вычислений на экран дисплея
t=-1:0.01:1; % Задан вектор (одномерный массив) t. Ряд значений параметра t в секундах от -1 до 1 с шагом 0,01 (201 значение). Оператор двоеточие разделяет начальное значение, шаг, конечное значение. Если шаг не задан, то он принимает значение 1. Значения t: -1.0000 -0.9900 -0.9800 -0.9700 -0.9600 -0.9500… Всего 201 значение
E=1; % Амплитуда сигнала равна 1
T=1; % Период сигнала равен 1 с
nh=(1:N)*2-1; % Вычисление вектора значений нечётных чисел аргумента косинуса. Вектор от 1 до N с шагом 1, каждый элемент которого умножается на 2 и из произведения вычитается 1. Если N=8, то nh=1 3 5 7 9 11 13 15
harmonics= =cos(2*pi*nh'*t/T); % Функция вычисления значений косинуса. Аргументы функции указываются в круглых скобках. Оператор транспонирования ' задаёт вектор nh в виде столбца (вектор-столбец). Транспонированная матрица получается из исходной заменой строк на столбцы. Вычисляется 8´201 значений косинуса
Em=2/pi./nh; % Вычисление вектора значений коэффициентов, на которые умножаются значения функции косинуса: 0.6366 0.2122 0.1273 0.0909 0.0707 0.0579 0.0490 0.0424. Точка перед знаком деления означает, что значение 2/pi делится на каждый элемент вектора nh
Em(2:2:end)=-Em(2:2:end); % Каждому значению вектора Em, начиная со второго до последнего, с шагом два присваивается знак минус: 0.6366 -0.2122 0.1273 -0.0909 0.0707 -0.0579 0.0490 -0.0424
s1=harmonics.* *repmat(Em',1,length(t)); % Вычисление произведений значений функций косинуса на значения коэффициентов. Оператор точка перед знаком умножения означает операцию с массивами. Функция repmat формирования массива из частей имеет три входных аргумента: транспонированный вектор Em, (вектор-столбец) количество строк 1 и столбцов length(t) для вновь создаваемого массива. Длина вектора t: length(t) составляет 201. Em' транспонированный вектор
s2=cumsum(s1); % Вычисление сумм гармонических составляющих. Функция sx = sum(X) в случае одномерного массива возвращает сумму элементов массива; в случае двумерного массива - это вектор-строка, содержащая суммы элементов каждого столбца. Функция csx = cumsum(X), кроме того, возвращает все промежуточные результаты суммирования.
for k=1:N % Начало цикла, шаг индексации равен 1
subplot(4,2,k) % Команда subplot позволяет выводить множество графиков в одном окне. Данная команда выполняется перед обращением к функциям построения графиков для одновременной выдачи нескольких графиков в различных частях графического окна. Команды subplot(mnp) или subplot(m, n, p), где mnp - 3 цифры, производит разбивку графического окна на несколько подокон, создавая при этом новые объекты axes; значение m указывает, на сколько частей разбивается окно по горизонтали, n - по вертикали, а p - номер подокна, куда будет выводиться очередной график.
plot(t, s2(k,:)) % Команда построения графика функции s2 по аргументу t в декартовой системе координат. Если в качестве аргументов заданы два вектора, то plot(x,y) создаст график зависимости y от x.
end % Окончание цикла

 

 

Рисунок 4 ― Представление меандра суммой гармонических составляющих его спектра

 

     3 Рекомендуемая литература

 

     1 Карташёв В. Г. Основы теории сигналов: учебное пособие/ В. Г. Карташёв, Г. В. Жихарева. ― М.: Издательство МЭИ, 2002. ― 80 с.

2 Лазарев Ю. Ф. Начала программирования в среде MatLAB: учебное пособие. — К.: НТУУ «КПИ», 2003. — 424 с.

 

     4 Контрольные вопросы и задачи

 

     1 Из каких составляющих состоит периодический сигнал?

     2 Из каких составляющих состоит гармонический сигнал? Дать обоснование ответа с использованием формул ряда Фурье.

     3 Записать и пояснить формулу ряда Фурье через амплитуды  и начальные фазы  гармоник.

     4 Что такое спектральная диаграмма?

     5 Записать и пояснить формулу ряда Фурье в комплексной форме.

     6 Дать определение огибающей спектра. Как изменяется огибающая спектра периодического импульсного сигнала при изменении длительности и периода повторения импульсов?

 

Профессор В. П. Фандеев


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: