Документация Engee
Notebook

Генерация и анализ векторных сигналов

Открыть пример в Engee

Введение

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

model.png

Модель состоит из блоков источника дискретного синусоидального сигнала DSP Sine Wave, блока Gain, умножающего входной сигнал на постоянное значение, блока Sum of Elements, суммирующего элементы векторного входа, и блока Selector, выделяющего элементы из векторного входа.

Генерация нескольких синусоид

Параметры блока источника сигнала приведены на рисунке ниже. Стоит отметить, что в модели мы генерируем сразу пять синусоид, задавая значения амплитуд, частот и начальных фаз вектором. В нашем случае мы генерируем сигналы одинаковой амплитуды на частотах 5 Гц, 95 Гц, 105 Гц, 195 Гц и 205 Гц. Причём начальная фаза меняется на 180 градусов от синусоиды к синусоиде. Частота дискретизации сигнала равна 500 Гц.

sine.png

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

Спектр векторного и суммарного сигналов

Отобразим спектр сигнала in в окне Графики, выбрав в Меню сигналов: Сигналы в частотной области. Мы наблюдаем пять спектров пяти дискретных синусоид на указанных частотах:

spect01.png

Теперь рассмотрим спектр суммарного сигнала на выходе блока Sum of Elements. Мы видим спектр одного сигнала, но пики его находятся на тех же частотах:

spect02.png

Можно заметить, что уровень мощности пиков в спектре суммарного сигнала выше, чем у пиков отдельных синусоид на 6 дБ. Это связано с тем, что мы пропускаем векторный сигнал через блок Gain, увеличивая амплитуду каждого из элементов вектора вдвое. Операция умножения векторизована, на выходе блока Gain сигнал также векторный.

Визуализация сигнала во временной области

Теперь построим осциллограммы сигнала in, выбрав в Меню сигналов: Сигналы во временной области. Мы наблюдаем на одних осях пять дискретных синусоид с разным периодом повторения. Также мы можем отключать отдельные элементы вектора на легенде под графиком, выводя на отрисовку интересующие нас сигналы. time01.png

Амплитуда каждой из синусоид на выходе генератора сигнала равна 0.1. После блока Gain размах синусоид становится от -0.2 до 0.2.

Форма результирующего сигнала

Если отразить во временной области форму сигнала на выходе блока Sum of Elements, можно наблюдать ожидаемую форму сигнала. Это импульсные выбросы отсчётов синусоиды размахом от -1 до 1 с провалами до нуля между выбросами. Когда пять дискретных синусоид амплитудой 0.2 складываются в фазе, мы получаем максимум суммарного сигнала, но чаще всего их суперпозиция даёт ноль: time02.png

Также на график можно вывести одну из синусоид с выхода блока Gain, при этом мы используем блок Selector для выделения одного скалярного сигнала из вектора. В модели выделяется первый элемент вектора, то есть синусоида амплитудой 0.2 и частотой 5 Гц.

Заключение

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

Блоки, использованные в примере