Zoom FFT

БПФ с высоким разрешением фрагмента спектра

  • Библиотека:
  • DSP System Toolbox / Преобразовывает

  • Zoom FFT block

Описание

Блок Zoom FFT вычисляет быстрое преобразование Фурье (FFT) сигнала по фрагменту частот в интервале Найквиста. Путем устанавливания соответствующий коэффициент децимации D и частота дискретизации Fs, можно выбрать полосу пропускания частот, чтобы анализировать BW, где BW = Fs/D. Можно также выбрать определенную область значений частот, чтобы анализировать в интервале Найквиста путем выбора центральной частоты желаемой полосы.

Разрешение сигнала является отношением Fs и длины БПФ (L). Используя БПФ изменения масштаба, можно сохранить то же разрешение, которого вы достигли бы с полноразмерным БПФ на вашем исходном сигнале путем вычисления маленького БПФ на более коротком сигнале. Более короткий сигнал прибывает из десятикратного уменьшения исходного сигнала. Сбережения прибывают из способности вычислить намного более короткий БПФ при достижении того же разрешения. Для фактора децимации D новой частотой дискретизации, Fsd, является Fs/D, и новым форматом кадра (и длина БПФ) является Ld = L/D. Разрешением подкошенного сигнала является Fsd/Ld = Fs/L. Чтобы достигнуть более высокого разрешения более короткой полосы, используйте исходную длину БПФ, L, вместо подкошенной длины БПФ, Ld.

Порты

Входной параметр

развернуть все

Ввод данных, БПФ изменения масштаба которого блок вычисляет в виде вектора или матрицы. Количество входных строк должно быть кратным фактору децимации.

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

Этот порт без имени, пока вы не выбираете параметр Specify center frequency from input port и нажимаете Apply.

Пример: randn(22,2)

Типы данных: single | double
Поддержка комплексного числа: Да

Центральная частота желаемой полосы в Гц, через который проходят этот входной порт как действительный скаляр в области значений (– SampleRate/2, SampleRate/2). SampleRate является входной частотой дискретизации, или наследованной от входного сигнала или заданной через параметр Input sample rate (Hz). Этот порт появляется только, когда вы устанавливаете флажок Specify center frequency from input port.

Этот порт появляется только, когда вы устанавливаете флажок Specify center frequency from input port и нажимаете Apply.

Пример: 0

Пример: 1200

Типы данных: single | double

Выходные аргументы

развернуть все

Масштабируйте FFT выходной параметр, возвращенный как вектор или матрица. Если вы устанавливаете флажок Inherit FFT Length from input dimensions, выходной формат кадра равняется размеру входного кадра, разделенному на фактор децимации. Если вы снимаете флажок Inherit FFT Length from input dimensions и задаете длину БПФ, выходной формат кадра равняется заданной длине БПФ. Тип выходных данных совпадает с типом входных данных.

Пример: randn (11,2)

Типы данных: single | double
Поддержка комплексного числа: Да

Параметры

развернуть все

Фактор децимации в виде положительного целого числа. Это значение задает фактор, которым блок уменьшает полосу пропускания входного сигнала. Количество строк во входном сигнале должно быть кратным фактору децимации.

Пример 4

Пример 8

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Когда вы выбираете эту опцию и нажимаете Apply, входной порт, Fc появляется на значке блока. Можно передать центральную частоту через этот входной порт как скаляр.

Центральная частота желаемой полосы в Гц в виде действительного скаляра в области значений (– SampleRate/2, SampleRate/2). SampleRate является входной частотой дискретизации, или наследованной от входа или заданной через параметр Input sample rate (Hz).

Пример: 0.5

Пример: 10

Зависимости

Этот параметр применяется, когда вы снимаете флажок Specify center frequency from input port.

Типы данных: single | double

Когда вы выбираете эту опцию, длина БПФ является отношением размера входного кадра (количество строк во входе) и Decimation factor.

Длина БПФ в виде положительного целого числа. Длина БПФ должна быть больше или быть равна отношению формата кадра (количество входных строк) и Decimation factor.

Пример: 24

Пример: 52

Зависимости

Этот параметр применяется, когда вы снимаете флажок Inherit FFT Length from input dimensions.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Когда вы снимаете этот флажок, блок наследовал частоту дискретизации от входного сигнала.

Введите частоту дискретизации в Гц в виде положительного действительного скаляра.

Пример: 44100

Пример: 48000

  • Interpreted execution — Симулируйте модель с помощью MATLAB®  интерпретатор. Эта опция сокращает время запуска и имеет более быструю скорость симуляции, чем Code generation.

  • Code generation — Симулируйте модель с помощью сгенерированного кода C. В первый раз вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С снова используется для последующих симуляций, пока модель не изменяется. Эта опция требует дополнительного времени запуска и обеспечивает более медленную скорость симуляции, чем Interpreted execution.

Характеристики блока

Типы данных

double | single

Многомерные сигналы

No

Сигналы переменного размера

Yes

Алгоритмы

Алгоритм бпф изменения масштаба усиливает полосу пропускания, фильтрующую прежде, чем вычислить БПФ сигнала. Концепция полосовой фильтрации, это предполагает, что вы интересуетесь полосой [F1, F2] исходного входного сигнала, произведенного на уровне Гц Fs. Если вы передаете этот сигнал через комплексный (односторонний) полосовой фильтр, сосредоточенный в Fc = (F1 +F2)/2, с полосой пропускания BW = F2F1, и затем прореживаете сигнал на коэффициент D = пол (Fs/BW), желаемая полоса сводится к основной полосе.

Если Fc нельзя выразить в форме k ×Fs/D, где k является целым числом, то переключенный, подкошенный спектр не сосредоточен в DC. В этом случае центральная частота переводится в Fd.

Fd=Fc(Fs/D)×floor((D×Fc+Fs/2)/Fs)

Комплексный полосовой фильтр получен первой разработкой прототипа фильтра lowpass и затем умножением коэффициентов lowpass с комплексной экпонентой. Этот алгоритм использует многоскоростной, многоступенчатый КИХ-фильтр в качестве прототипа фильтра lowpass. Чтобы получить полосовой фильтр, коэффициенты каждого этапа являются переключенной частотой. Фактором децимации является совокупный фактор децимации каждого этапа. Комплексный полосовой фильтр, сопровождаемый decimator, реализуется с помощью эффективной многофазной структуры. Для получения дополнительной информации о проекте комплексного полосового фильтра от многоскоростного многоступенчатого КИХ-прототипа фильтра смотрите БПФ Изменения масштаба и Комплексный Проект Полосового фильтра.

Ссылки

[1] Харрис, Обработка сигналов Ф.Дж. Малтирэйта для Систем связи. Prentice Hall, 2004, стр 208–209.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Введенный в R2017b