Быстрое преобразование Фурье





| Векторизован | Си |
в палитре на схеме

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

Входы

  • Real data in – входной вектор вещественных частей входного сигнала;
  • Imag data in – входной вектор мнимых частей входного сигнала;
  • Sync – вход для синхроимпульсов.

Выходы

  • RealDataOut – вектор действительных частей выходного сигнала;
  • ImagDataOut – вектор мнимых частей выходного сигнала.

Свойства:

  • Размер серии – величина серии обрабатываемых данных (целое число);
  • Тип входных данных – тип сигнала, подаваемого на вход блока: вещественный либо комплексный сигнал.

Параметры

нет

Прим.: на входной порт Sync должны подаваться прямоугольные синхроимпульсы единичной амплитуды. Срабатывание блока происходит по переднему фронту синхроимпульсов. При каждом срабатывании блока на выходе формируется массив действительных и мнимых частей комплексных чисел по следующему правилу (обратное дискретное преобразование Фурье):

где N – количество отсчетов; X – результирующий массив комплексных числе; x – массив входных данных. Наибольшая эффективность достигается при использовании серий размера 2n.

Пример:

Рассмотрим пример использования блока быстрого преобразования Фурье, расположенный по адресу %PROGRAMM_DIR%\Demo\Обработка сигналов\Фильтр Быстрого преобразования Фурье\Синус\Синус.prt:



Здесь блок прямого преобразования Фурье используется в некоторой схеме обработки сигнала. Исходный сигнал представляет собой синусоиду с частотой 1 Гц. Блок буфера формирует массив из 10 отсчетов с частотой дискретизации 10Гц, задаваемой меандром. Массив подвергается прямому преобразованию Фурье с помощью описываемого блока, результат которого – это массив комплексных чисел. Затем полученный массив комплексных чисел подвергается обратному преобразованию Фурье. Итоговый массив действительных чисел выводится с помощью блока буферного регистра. В качестве сигнала срабатывания блоков преобразования и сигнала записи данных в регистр используется сигнал готовности данных буфера. Результаты работы схемы:

Запаздывание на графике выходного сигнала связано с временем накопления заданного количества отсчетов.

Во втором примере приводится похожая схема, только для комплексного входа блока. Располагается пример по адресу %PROGRAMM_DIR%\Demo\Обработка сигналов\Пример использования блоков БПФ и ОБПФ\Пример использования блоков БПФ и ОБПФ.prt.

Третий пример по адресу %PROGRAMM_DIR%\Demo\Обработка сигналов\Пример использования блока БПФ\Пример использования блока БПФ (тест).prt. представляет собой модель, в которой на вход блока БПФ подаются тестовые данные двух видов - действительный и комплексный сигналы. При правильной настройке блока значения на его выходе будут соответствовать эталонным, что продемонстрирует зелёный цвет блока TEST.