Масштабируйте БПФ

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

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

Описание

Блок 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 — Simulate с помощью  интерпретатора MATLAB®. Эта опция сокращает время запуска и имеет более быструю скорость симуляции, чем Code generation.

  • Модель Code generation — Simulate с помощью сгенерированного кода 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