exponenta event banner

Оценка спектра мощности в Simulink

Спектр мощности (PS) сигнала во временной области представляет собой распределение мощности, содержащейся в сигнале по частоте, на основе конечного набора данных. Представление сигнала в частотной области часто легче анализировать, чем представление во временной области. Многие приложения для обработки сигналов, такие как шумоподавление и идентификация системы, основаны на частотно-специфических модификациях сигналов. Целью спектральной оценки мощности является оценка спектра мощности сигнала из последовательности временных выборок. В зависимости от того, что известно о сигнале, методы оценки могут включать параметрические или непараметрические подходы и могут быть основаны на анализе во временной или частотной области. Например, общий параметрический метод включает подгонку наблюдений к авторегрессионной модели. Обычным непараметрическим методом является периодограмма. Спектр мощности оценивается с использованием методов преобразования Фурье, таких как метод Уэлча и метод банка фильтров. Для сигналов с относительно малой длиной подход набора фильтров дает спектральную оценку с более высоким разрешением, более точным уровнем шума и пиками более точными, чем метод Уэлча, с низкой спектральной утечкой или без нее. Эти преимущества достигаются за счет увеличения вычислений и более медленного отслеживания. Дополнительные сведения об этих методах см. в разделе Спектральный анализ. Можно также использовать другие методы, такие как метод максимальной энтропии.

В Simulink ® можно выполнять спектральный анализ динамического сигнала в реальном времени с помощью блока Spectrum Analyzer. Спектральные данные можно просмотреть в анализаторе спектра. Для получения последних спектральных данных для дальнейшей обработки создайте SpectrumAnalyzerConfiguration и выполните команду getSpectrumData на этом объекте. В качестве альтернативы можно использовать блок оценки спектра из dspspect3 библиотека для вычисления спектра мощности и блок графика массива для просмотра спектра.

Оценка спектра мощности с помощью анализатора спектра

Спектр мощности (PS) сигнала можно просмотреть с помощью блока Spectrum Analyzer. PS вычисляется в реальном времени и изменяется в зависимости от входного сигнала и с изменениями свойств блока Spectrum Analyzer. Можно изменить динамику входного сигнала и посмотреть, какое влияние эти изменения оказывают на спектр сигнала в реальном времени.

Модель ex_psd_sa подает шумный синусоидальный сигнал в блок анализатора спектра. Синусоидальный сигнал представляет собой сумму двух синусоид: одна на частоте 5000 Гц, а другая на частоте 10000 Гц. Шум на входе является гауссовым, со средним нулевым значением и стандартным отклонением 0,01.

Открытие и проверка модели

Для открытия модели введите ex_psd_sa в командной строке MATLAB ®.

Вот настройки блоков в модели.

БлокИзменения параметровНазначение блока
Синусоидальная волна 1
  • Частота до 5000

  • Время выборки до 1/44100

  • Выборки на кадр до 1024

Синусоидальный сигнал с частотой 5000 Гц

Синусоидальная волна 2
  • Частота до 10000

  • Фазовое смещение (рад) до 10

  • Время выборки до 1/44100

  • Выборки на кадр до 1024

Синусоидальный сигнал с частотой 10000 Гц

Случайный источник
  • Тип источника для Gaussian

  • Отклонение от 1e-4

  • Время выборки до 1/44100

  • Выборки на кадр до 1024

Блок случайного источника генерирует сигнал случайного шума со свойствами, заданными в диалоговом окне блока
ДобавитьСписок знаков для +++.Блок сложения добавляет случайный шум к входному сигналу
Анализатор спектра

Щелкните значок Настройки спектра (Spectrum Settings). Справа появится панель.

  • На панели «Основные параметры» в разделе «Тип» выберите Power. В разделе «Метод» выберите Filter bank.

  • На панели параметров трассировки снимите флажок Двусторонний спектр. Это показывает только реальную половину спектра.

  • При необходимости установите флажки Трассировка с максимальным удержанием и Трассировка с минимальным удержанием.

Щелкните значок «Свойства конфигурации» и задайте Y-пределы (минимум) как -100 и Y-пределы (максимум) как 40.

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

Воспроизвести модель. Откройте блок Spectrum Analyzer для просмотра спектра мощности синусоидального сигнала. Имеется два тона на частотах 5000 Гц и 10000 Гц, которые соответствуют двум частотам на входе.

RBW, разрешающая полоса - это минимальная полоса частот, которая может быть разрешена анализатором спектра. По умолчанию RBW (Гц) имеет значение Auto. В Auto режим, RBW - отношение частотного диапазона к 1024. В двустороннем спектре это значение равно Fs/1024, в то время как в одностороннем спектре оно равно (Fs/2 )/1024. Анализатор спектра вex_psd_sa выполнен с возможностью отображения одностороннего спектра. Следовательно, RBW составляет (44100/2 )/1024 или 21,53 Гц.

Используя это значение RBW, число входных выборок, используемых для вычисления одного спектрального обновления, задается Nsamples = Fs/RBW, которое равно 44100/21.53 или 2048.

RBW, рассчитанный в этом режиме, дает хорошее разрешение по частоте.

Чтобы различать две частоты в дисплее, расстояние между двумя частотами должно быть, по меньшей мере, RBW. В этом примере расстояние между двумя пиками составляет 5000 Гц, что больше, чем RBW. Таким образом, вы можете видеть пики отчетливо. Измените частоту второй синусоидальной волны с 10000 Гц на 5015 Гц. Разница между этими двумя частотами меньше, чем RBW.

На масштабировании видно, что пики не различимы.

Для увеличения разрешения частоты уменьшите RBW до 1 Гц и выполните моделирование.

При масштабировании два пика, которые находятся на расстоянии 15 Гц, теперь различимы

При увеличении разрешения частоты разрешение по времени уменьшается. Для поддержания хорошего баланса между частотным разрешением и временным разрешением измените значение RBW (Гц) на Auto.

Изменение входного сигнала

При изменении динамики входного сигнала во время моделирования спектр мощности сигнала также изменяется в реальном времени. Во время моделирования измените частоту блока синусоидальной волны 1 на 8000 и нажмите «Применить». Второй тон на выходе спектрального анализатора сдвигается до 8000 Гц, и вы можете видеть изменения в реальном времени.

Изменение настроек анализатора спектра

При изменении настроек в блоке Spectrum Analyzer эффект можно увидеть на спектральных данных в реальном времени.

Во время работы модели на панели параметров трассировки блока Spectrum Analyzer измените масштаб на Log. Теперь PS отображается в масштабе журнала.

Дополнительные сведения о влиянии настроек анализатора спектра на данные спектра мощности см. в разделе «Алгоритмы» справочной страницы блока анализатора спектра.

Преобразование мощности между единицами измерения

Анализатор спектра содержит три блока для определения спектральной плотности мощности: Watts/Hz, dBm/Hz, и dBW/Hz. Соответствующими блоками питания являются Watts, dBm, и dBW. Для электротехнических приложений можно также просмотреть среднеквадратичное значение сигнала в Vrms или dBV. Тип спектра по умолчанию - Power in dBm.

Преобразование мощности в ваттах в дБВт и дБм

Мощность в dBW задается:

PdBW = 10log10 (мощность в ватт/1 Вт)

Мощность в dBm задается:

PdBm = 10log10 (мощность в ватт/1 милливатт)

Для синусоидального сигнала с амплитудой 1 В мощность одностороннего спектра в Watts задается:

PWatts = A2/2PWatts = 1/2

В этом примере эта мощность равна 0,5 Вт. Соответствующая мощность в дБм задаётся:

PdBm = 10log10 (мощность в ватт/1 милливатт) PdBm = 10log10 (0,5/10 − 3)

Здесь мощность равна 26,9897 дБм. Чтобы подтвердить это значение с помощью поиска пиков, щелкните Инструменты > Измерения > Поиск пиков.

Для сигнала белого шума спектр является плоским для всех частот. Анализатор спектра в этом примере показывает односторонний спектр в диапазоне [0 Fs/2]. Для сигнала белого шума с дисперсией 1e-4 мощность на единицу полосы пропускания (Punitbandwidth) равна 1e-4. Суммарная мощность белого шума в ваттах по всему диапазону частот задаётся:

Pwitenoise = Punitbandwidth * число частотных ячеек, Pwhitenoise = (10 4) * (Fs/2RBW), Pwhitenoise = (10 4) * (2205021,53)

Количество частотных ячеек - это отношение общей полосы пропускания к RBW. Для одностороннего спектра общая полоса пропускания равна половине частоты дискретизации. RBW в этом примере составляет 21,53 Гц. При этих значениях суммарная мощность белого шума в ваттах равна 0,1024 Вт. В дБм мощность белого шума может быть вычислена с помощью 10 * log10 (0,1024/10 ^ -3), что равно 20,103 дБм.

Преобразование мощности в ваттах в dBFS

Если для спектральных единиц установлено значение dBFS и установить полную шкалу (FullScaleSourceКому Auto, мощность в dBFS вычисляется как:

PdBFS=20⋅log10 (Pwatts/Full_Scale)

где:

  • Pwatts - мощность в ваттах

  • Для двойных и поплавковых сигналов Full_Scale является максимальным значением входного сигнала.

  • Для сигналов с фиксированной точкой или целочисленных сигналов Full_Scale является максимальным значением, которое может быть представлено.

Если указать полный масштаб вручную (набор FullScaleSource кому Property), питание в dBFS задается:

PFS=20⋅log10 (Pwatts/FS)

Где FS - полный коэффициент масштабирования, указанный в FullScale собственность.

Для синусоидального сигнала с амплитудой 1 В мощность одностороннего спектра в Watts задается:

PWatts = A2/2PWatts = 1/2

В этом примере эта мощность равна 0,5 Вт, а максимальный входной сигнал для синусоидальной волны равен 1 В. Соответствующая мощность в дБФС задается следующим образом:

PFS=20⋅log10 (1/2/1)

Здесь мощность равна -3.0103. Чтобы подтвердить это значение в анализаторе спектра, выполните следующие команды:

Fs = 1000;  % Sampling frequency
sinef = dsp.SineWave('SampleRate',Fs,'SamplesPerFrame',100);
scope = dsp.SpectrumAnalyzer('SampleRate',Fs,...
   'SpectrumUnits','dBFS','PlotAsTwoSidedSpectrum',false)
%%
for ii = 1:100000
xsine = sinef();
scope(xsine)
end
Затем щелкните Инструменты > Измерения > Поиск пиков.

Преобразование мощности в дБм в среднеквадратичное значение в Vrms

Мощность в dBm задается:

PdBm = 10log10 (мощность в ватт/1 милливатт)

Напряжение в СРК задается:

Vrms = 10PdBm/2010 − 3

В предыдущем примере PdBm равен 26,9897 дБм. Значение Vrms рассчитывается как

Vrms = 1026.9897/200.001

что равно 0,7071.

Для подтверждения этого значения:

  1. Изменить тип на RMS.

  2. Откройте поисковик пиков, щелкнув Инструменты > Измерения > Поисковик пиков.

Оценка спектра мощности с помощью блока оценки спектра

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

Замените блок анализатора спектра в ex_psd_sa с блоком оценки спектра, за которым следует блок графика массива. Для просмотра модели введите ex_psd_estimatorblock в командной строке MATLAB. Кроме того, чтобы получить доступ к данным спектральной оценки в MATLAB, подключите блок To Workspace (Simulink) к выходу блока Spectrum Estimator. Вот изменения в настройках блока оценки спектра и блока графика массива.

БлокИзменения параметровНазначение блока
Оценщик спектра

  • Метод частотного разрешения для Number of frequency bands.

  • Диапазон частот до One-sided.

Вычисляет спектр мощности входного сигнала с использованием подхода набора фильтров.
Печать массива

Щелкните Вид и

  • выбрать Style. В окне «Стиль» выберите тип печати как Stairs.

  • выбрать Configuration Properties. В окне Свойства конфигурации на вкладке Главная задайте приращение образца как 44.1/1024. На вкладке «Отображение» измените X-метку на Frequency (kHz), Y-метка для Power (dBm). Дополнительные сведения см. в разделе «Преобразование» x-axis для представления частоты '. Кроме того, установите Y-пределы (минимум) на-100 и Y-пределы (максимум) до 40.

Отображает данные спектра мощности.

Спектр, отображаемый в блоке графика массива, аналогичен спектру, отображаемому в блоке анализатора спектра в ex_psd_sa.

Подход набора фильтров создает пики, которые имеют очень минимальную спектральную утечку.

Новообращенный x- ось для представления частоты

По умолчанию блок «Печать массива» отображает данные PS в зависимости от количества выборок в кадре. Количество точек на оси X равно длине входного кадра. Анализатор спектра строит график данных PS относительно частоты. Для одностороннего спектра частота изменяется в диапазоне [0 Fs/2]. Для двустороннего спектра частота изменяется в диапазоне [-Fs/2 Fs/2]. Чтобы преобразовать x- ось графика массива от выборки к частоте, выполните следующие действия.

  • Щелкните значок «Свойства конфигурации». На вкладке «Главная» установите для параметра «Приращение образца» значение Fs/FrameLength.

  • Для одностороннего спектра задайте смещение по оси X равным 0.

  • Для двустороннего спектра задайте смещение по оси X равным -Fs/2.

В этом примере спектр является односторонним, и, следовательно, приращение Sample и смещение X установлены в 44100/1024 и 0соответственно. Чтобы указать частоту в kHz, задайте для параметра Sample increment значение 44.1/1024.

Обработка в реальном времени

Выходной сигнал блока спектральной оценки содержит спектральные данные и доступен для дальнейшей обработки. Данные могут обрабатываться в реальном времени или храниться в рабочей области с помощью блока «В рабочую область». В этом примере спектральные данные записываются в переменную рабочей области. Estimate.

Связанные темы