Отобразите частотный спектр сигналов временной области
Система спектрального анализатора object™ отображает частотный спектр сигналов временной области. Эти возможности поддерживают вход переменного размера, который позволяет изменить размер входного кадра. Форматы кадра - первая размерность вектора входа. Количество входа каналов должно оставаться постоянным.
Для отображения спектров сигналов в анализаторе спектра:
Создайте dsp.SpectrumAnalyzer
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
scope = dsp.SpectrumAnalyzer
создает объект Spectrum Analyzer System. Этот объект отображает частотный спектр реальных и комплексных сигналов с плавающей и фиксированной точками.
scope = dsp.SpectrumAnalyzer(ports)
создает объект Spectrum Analyzer и устанавливает свойство NumInportPorts в значение ports
.
scope = dsp.SpectrumAnalyzer(Name,Value)
устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключайте каждое имя свойства в одинарные кавычки.
Если не указано иное, свойства являются нетронутыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируются, когда вы вызываете их, и release
функция разблокирует их.
Если свойство настраивается, можно изменить его значение в любой момент.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.
NumInputPorts
- Количество входных портов1
(по умолчанию) | целое число между [1, 96]Количество входа портов, заданное в виде положительного целого числа. Каждый сигнал, поступающий через отдельный вход, становится отдельным каналом в возможности. Необходимо вызвать возможности видимости с таким же количеством входов, как и значение этого свойства.
InputDomain
- Область входного сигнала"Time"
(по умолчанию) | "Frequency"
Область входного сигнала, которую вы хотите визуализировать. Если вы визуализируете сигналы временной области, сигнал преобразуется в частотный спектр на основе алгоритма, заданного параметром Method.
Откройте Spectrum Settings. В разделе Main options установите Input Domain.
Типы данных: char
| string
SpectrumType
- Тип спектра для показа"Power"
(по умолчанию) | "Power density"
| "RMS"
Укажите тип спектра для отображения.
"Power"
- Спектр степени
"Power density"
- Спектральная плотность степени. Спектральная плотность степени является квадратной величиной спектра, нормированной к ширине полосы 1 герц.
"RMS"
- Средний корень квадрат. Средний корень-квадрат показывает квадратный корень среднего квадрата. Эта опция полезна при просмотре частоты сигналов напряжения или тока.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Main options установите Type.
Типы данных: char
| string
ViewType
- Тип средства просмотра"Spectrum"
(по умолчанию) | "Spectrogram"
| "Spectrum and spectrogram"
Задайте тип спектра как один из "Spectrum"
, "Spectrogram"
, или "Spectrum and spectrogram"
.
"Spectrum"
- показывает спектр степени.
"Spectrogram"
- показывает содержимое с течением времени. Каждая линия спектрограммы является одной периодограммой. Время прокрутки снизу до верхней части отображения. Самое последнее обновление спектрограммы находится в нижней части отображения.
"Spectrum and Spectrogram"
- показывает двойной вид спектра и спектрограммы.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Main options установите View.
Типы данных: char
| string
SampleRate
- Частота дискретизации входов10000
(по умолчанию) | конечный скалярЗадайте частоту дискретизации, в герцах, входных сигналов как конечный числовой скаляр.
Откройте Spectrum Settings. В разделе Main options установите Sample rate (Hz).
Method
- Метод оценки спектра"Welch"
(по умолчанию) | "Filter Bank"
Задайте метод оценки спектра как Welch
или Filter bank
.
Чтобы включить это свойство, установите значение InputDomain на "Time"
.
Откройте Spectrum Settings. В разделе Main options установите Method.
Типы данных: char
| string
PlotAsTwoSidedSpectrum
- Двусторонний флаг спектраtrue
(по умолчанию) | false
true
- Вычисление и построение двусторонних спектральных оценок. Когда входной сигнал является комплексным, вы должны задать это свойство true
.
false
- Вычисление и построение односторонних спектральных оценок. Если вы задаете это свойство равным false
, тогда входной сигнал должен быть реальным.
Когда это свойство false
, Spectrum Analyzer использует сгибание мощности. Значения y -оси в два раза больше амплитуды, чем они были бы, если бы это свойство было установлено на true
, кроме как в 0
и частоту Найквиста. Односторонняя спектральная плотность степени (PSD) содержит общую степень сигнала в частотном интервале от постоянного тока до половины скорости Найквиста. Для получения дополнительной информации см. pwelch
.
Откройте Spectrum Settings. В Trace options разделе выберите Two-sided spectrum.
Типы данных: logical
FrequencyScale
- Шкала частоты"Linear"
(по умолчанию) | "Log"
"Log"
- отображает частоты на x -оси в логарифмической шкале. Как использовать "Log"
установка, вы также должны задать PlotAsTwoSidedSpectrum
свойство к false
.
"Linear"
- отображает частоты на x -оси в линейной шкале. Как использовать "Linear"
установка, вы также должны задать PlotAsTwoSidedSpectrum
свойство к true
.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Trace options установите Scale.
Типы данных: char
| string
FrequencySpan
- Режим частотного диапазона"Full"
(по умолчанию) | "Span and center frequency"
| "Start and stop frequencies"
"Full"
- Анализатор спектра вычисляет и строит графики спектра на протяжении всего частотного интервала Найквиста.
"Span and center frequency"
- Анализатор спектра вычисляет и строит графики спектра на интервале, заданном свойствами Span и CenterFrequency.
"Start and stop frequencies"
- Анализатор спектра вычисляет и строит графики спектра на интервале, заданном свойствами StartFrequency и StopFrequency.
Настраиваемый: Да
Откройте Spectrum Settings. В Main options разделе выберите Full frequency span для "Full"
. В противном случае снимите флажок Full frequency span и выберите между Span
или FStart
.
Типы данных: char
| string
Span
- Частотный диапазон для вычисления спектра10e3
(по умолчанию) | реальная положительная скалярная величинаЗадайте частотный диапазон в герце, над которым Анализатор Спектра вычисляет и строит график спектра. Общий диапазон, заданный этим свойством и свойством CenterFrequency, должен попадать в частотный интервал Nyquist.
Настраиваемый: Да
Чтобы включить это свойство, установите значение FrequencySpan равным "Span and center frequency"
.
Откройте Spectrum Settings. В разделе Main options снимите флажок Full frequency span и установите Span
.
StartFrequency
- Запустите частоту для вычисления спектра-5e3
(по умолчанию) | действительный скалярНачало частотного интервала, над которым вычисляется спектр, заданное в hertz как действительный скаляр. Общий диапазон, который задан этим свойством и StopFrequency, должен попадать в частотный интервал Найквиста.
Настраиваемый: Да
Чтобы включить это свойство, установите значение FrequencySpan равным "Start and stop frequencies"
.
Откройте Spectrum Settings. В Main options разделе очистите Full frequency span и измените Span
на FStart
. Установите FStart (Hz).
StopFrequency
- Частота остановки для вычисления спектра5e3
(по умолчанию) | действительный скалярКонец частотного интервала, над которым вычисляется спектр, заданный в герце как действительный скаляр. Общий диапазон, который определяется этим свойством и свойством StartFrequency, должен попадать в частотный интервал Найквиста.
Настраиваемый: Да
Чтобы включить это свойство, установите значение FrequencySpan равным "Start and stop frequencies"
.
Откройте Spectrum Settings. В Main options разделе очистите Full frequency span и измените Span
на FStart
. Установите FStop (Hz).
CenterFrequency
- Центр частотного диапазона0
(по умолчанию) | действительный скалярУкажите в hertz центральную частоту диапазона, над которым анализатор спектра вычисляет и строит график спектра. Полный диапазон частот, заданный Span и этим свойством, должен попадать в частотный интервал Найквиста.
Настраиваемый: Да
Чтобы включить это свойство, установите значение FrequencySpan равным "Span and center frequency"
.
Откройте Spectrum Settings. В Main очистите Full frequency span и установите CF (Hz).
FrequencyResolutionMethod
- Метод частотного разрешения"RBW"
(по умолчанию) | "WindowLength"
| "NumFrequencyBands"
Задайте метод частотного разрешения анализатора спектра.
"RBW"
- свойства RBWSource и RBW контролируют частотное разрешение (в Гц) анализатора. Длина БПФ является длиной окна, которая является результатом достижения заданного значения RBW или 1024, в зависимости от того, какая величина больше.
"WindowLength"
- применяется только, когда для свойства Method задано значение "Welch"
. Свойство WindowLength управляет разрешением частоты. Вы можете управлять количеством точек БПФ только когда FrequencyResolutionMethod
свойство "WindowLength"
.
"NumFrequencyBands"
- применяется только, когда для свойства Method задано значение "Filter Bank"
. The FFTLengthSource
и FFTLength
свойства управляют разрешением частоты.
Настраиваемый: Да
Чтобы включить это свойство, установите значение InputDomain на "Time"
.
Откройте Spectrum Settings. В разделе Main options установите метод частотного разрешения путем выбора RBW (Hz) выпадающего списка.
Типы данных: char
| string
RBWSource
- Источник значения полосы пропускания разрешения"Auto"
(по умолчанию) | "Property"
Укажите источник полосы пропускания разрешения (RBW) как "Auto"
или "Property"
.
"Auto"
- Анализатор спектра регулирует разрешение спектральной оценки, чтобы убедиться, что существует 1024 интервала RBW на заданном частотном диапазоне.
"Property"
- Задайте пропускную способность разрешения непосредственно с помощью свойства RBW.
Настраиваемый: Да
Чтобы включить это свойство, установите либо:
InputDomain, для "Time"
и FrequencyResolutionMethod, для "RBW"
.
InputDomain
на "Frequency"
.
Откройте Spectrum Settings. В разделе Main options установите RBW (Hz).
Типы данных: char
| string
RBW
- Пропускная способность разрешения9.76
(по умолчанию) | реальная положительная скалярная величинаRBW контролирует спектральное разрешение анализатора спектра. Задайте пропускную способность разрешения в hertz как реальная положительная скалярная величина. Необходимо задать значение, чтобы убедиться, что существует по крайней мере два интервала RBW в указанном диапазоне частот. Таким образом, отношение общего диапазона к RBW должно быть больше двух:
Можно задать общий диапазон различными способами на основе того, как вы задаете свойство FrequencySpan.
Чтобы включить, установите:
RBWSource для "Property"
Откройте Spectrum Settings. В разделе Main options установите RBW (Hz).
WindowLength
- Длина окна1024
(по умолчанию) | целое число, больше 2Управление разрешением частоты путем определения длины окна в выборках, используемых для вычисления спектральных оценок. Длина окна должна быть целочисленным скаляром, больше 2.
Настраиваемый: Да
Чтобы включить это свойство, установите:
FrequencyResolutionMethod, для "WindowLength"
, который управляет разрешением частоты в зависимости от настройки длины окна
Метод для "Welch"
Откройте Spectrum Settings. Измените выпадающий список RBW (Hz) на Window length
.
FFTLengthSource
- Источник длины БПФ"Auto"
(по умолчанию) | "Property"
"Auto"
- устанавливает длину БПФ на длину окна, заданную в свойстве WindowLength или 1024, в зависимости от того, какая длина больше.
"Property"
- количество точек БПФ, использующих FFTLength
свойство. FFTLength
должно быть больше WindowLength
.
Настраиваемый: Да
Чтобы включить это свойство, установите значение FrequencyResolutionMethod на "WindowLength"
.
Откройте Spectrum Settings. В Main options разделе рядом с опцией RBW (Hz) введите число или выберите Auto
.
Типы данных: char
| string
FFTLength
- Длина БПФ1024
(по умолчанию) | положительное целое числоЗадайте длину БПФ, которую анализатор спектра использует для вычисления спектральных оценок.
Если FrequencyResolutionMethod "RBW"
длина БПФ устанавливается как длина окна, требуемая для достижения заданного значения полосы пропускания разрешения или 1024, в зависимости от того, какая длина больше.
Настраиваемый: Да
Чтобы использовать это свойство, должно быть true:
Для FrequencyResolutionMethod задано значение "WindowLength"
или "NumFrequencyBands"
FFTLength
больше или равно WindowLength.
Для FFTLengthSource задано значение "Property"
.
Откройте Spectrum Settings. В Main options разделе рядом с опцией RBW (Hz) введите число или выберите Auto
.
NumTapsPerBand
- Количество отводов фильтра на полосу12
(по умолчанию) | положительным четным скаляромЗадайте количество отводов или коэффициентов фильтра для каждой полосы частот. Это число должно быть положительным четным целым числом. Это значение соответствует количеству коэффициентов фильтра на полифазную ветвь. Общее количество коэффициентов фильтра равно NumTapsPerBand
+ FFTLength.
Чтобы включить это свойство, установите значение Method равным "Filter Bank"
Откройте Spectrum Settings. В разделе Main options установите Taps per band.
FrequencyVectorSource
- Источник вектора частоты"Auto"
(по умолчанию) | "Property"
"Auto"
- Вектор частоты вычисляется из длины входа. См. «Вектор частот».
"Property"
- Введите пользовательский вектор в качестве частотного вектора.
Чтобы включить это свойство, установите значение InputDomain на "Frequency"
.
Откройте Spectrum Settings. В разделе Frequency input options установите Frequency (Hz).
Типы данных: char
| string
FrequencyVector
- Пользовательский вектор частоты[-5000 5000]
(по умолчанию) | монотонно увеличивающийся векторУстановите вектор частоты, который определяет x -ось отображения. Вектор должен быть монотонно увеличен и иметь тот же размер, что и размер входного кадра.
Чтобы включить это свойство, задайте FrequencyVectorSource
на "Property"
.
Откройте Spectrum Settings. В разделе Frequency input options установите Frequency (Hz).
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
OverlapPercent
- Процент перекрытия0
(по умолчанию) | вещественное, скалярное значениеПроцент перекрытия между предыдущим и текущим буферизованными сегментами данных, заданный как действительное, скалярное значение. Перекрытие создает сегмент окна, который используется для вычисления спектральной оценки. Значение должно быть больше или равно нулю и меньше 100.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Window options установите Overlap (%).
Window
- Оконная функция"Hann"
(по умолчанию) | "Rectangular"
| "Chebyshev"
| "Flat Top"
| "Hamming"
| "Kaiser"
| "Blackman-Harris"
| "Custom"
Задайте оконную функцию для спектральной оценки. В следующей таблице показаны предустановленные окна. Для получения дополнительной информации перейдите по ссылке на соответствующую ссылку на функцию в Signal Processing Toolbox™ документации.
Опция окна | Соответствующая функция Signal Processing Toolbox |
---|---|
"Rectangular" | rectwin |
"Chebyshev" | chebwin |
"Flat Top" | flattopwin |
"Hamming" | hamming |
"Hann" | hann |
"Kaiser" | kaiser |
"Blackman-Harris" | blackmanharris |
Чтобы задать свое собственное окно спектральной оценки, установите это свойство равным "Custom"
и задайте пользовательскую функцию окна в свойстве CustomWindow.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Window options установите Window.
Типы данных: char
| string
CustomWindow
- Пользовательская функция окна"hann"
(по умолчанию) | символьный массив | строковый скалярЗадайте пользовательскую функцию окна как символьный массив или строку. Пользовательские имена функции окна должны находиться в пути MATLAB. Это свойство полезно, если вы хотите настроить окно с помощью дополнительных свойств, доступных в версии окна Signal Processing Toolbox.
Настраиваемый: Да
Задайте и используйте пользовательскую функцию окна.
function w = my_hann(L) w = hann(L, 'periodic') end scope.Window = 'Custom'; scope.CustomWindow = 'my_hann'
Чтобы использовать это свойство, установите значение Window равным "Custom"
.
Откройте Spectrum Settings. В Window options разделе в поле опции Window введите пользовательское имя функции окна.
Типы данных: char
| string
SidelobeAttenuation
- Ослабление окна в боковой оси60
(по умолчанию) | реальная положительная скалярная величинаОслабление бокового окна в децибелах (дБ). Значение должно быть больше или равно 45
.
Настраиваемый: Да
Чтобы включить это свойство, установите значение Window равным "Chebyshev"
или "Kaiser"
.
Откройте Spectrum Settings. В разделе Window options установите Attenuation (dB).
InputUnits
- Модули частотного входа"dBm"
(по умолчанию) | "dBV"
| "dBW"
| "Vrms"
| "Watts"
Выберите модули входа частотного диапазона. Это свойство позволяет анализатору спектра масштабировать данные частоты, если вы выбираете другой модуль отображения со свойством Units.
Эта опция доступна, только если для InputDomain задано значение Frequency
.
Откройте Spectrum Settings. В разделе Frequency input options установите Input units.
Типы данных: char
| string
SpectrumUnits
- Модули спектра"Auto"
(по умолчанию) | "dBm"
| "dBFS"
| "dBV"
| "dBW"
| "Vrms"
| "Watts"
Укажите модули, в которых анализатор спектра отображает значения степени.
Настраиваемый: Да
Доступные спектры модулей зависеть от значения SpectrumType.
InputDomain | SpectrumType | Разрешенные SpectrumUnits |
---|---|---|
Time | Power или Power density | "dBFS" , "dBm" , "dBW" , "Watts" |
RMS | "Vrms" , "dBV" | |
Frequency | ― | "dBm" , "dBV" , "dBW" , "Vrms" , "Watts" , |
Откройте Spectrum Settings. В разделе Trace options установите Units.
Типы данных: char
| string
FullScaleSource
- Источник полной шкалы"Auto"
(по умолчанию) | "Property"
Укажите источник коэффициента масштабирования dBFS как "Auto"
или "Property"
.
"Auto"
- Анализатор спектра настраивает коэффициент масштабирования на основе входных данных.
"Property"
- Задайте полномасштабный коэффициент масштабирования с помощью FullScale
свойство.
Чтобы включить это свойство, установите значение SpectrumUnits на "dBFS"
.
Откройте Spectrum Settings. В Trace options разделе установите Full scale равным Auto
или введите число.
Типы данных: char
| string
FullScale
- Полная шкала1
(по умолчанию) | положительная скалярная величинаЗадайте действительную положительную скалярную величину для dBFS
полная шкала.
Настраиваемый: Да
Чтобы включить этот набор опций:
Функции SpectrumUnits для "dBFS"
FullScaleSource для "Property"
Откройте Spectrum Settings. В Trace options разделе установите Full scale равным Auto
или введите число.
AveragingMethod
- Метод сглаживания"Running"
(по умолчанию) | "Exponential"
Задайте метод сглаживания как:
Running
- Среднее число последних выборок n. Используйте SpectralAverages
свойство для задания n.
Exponential
- средневзвешенное значение выборок. Используйте ForgettingFactor
свойство для определения взвешенного коэффициента забывания.
Для получения дополнительной информации о методах усреднения смотрите Метод усреднения.
Чтобы включить это свойство, задайте ViewType
на "Spectrum"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В разделе Trace options установите Averaging method.
Типы данных: char
| string
SpectralAverages
- Количество спектральных средних значений1
(по умолчанию) | положительное целое числоАнализатор Спектра вычисляет текущую оценку спектральной мощности путем вычисления средней скорости последней оценки N спектральной мощности. Это свойство задает N.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum"
.
Это свойство применяется только когда AveragingMethod
является "Running"
.
Откройте Spectrum Settings. В разделе Trace options установите Averages.
ForgettingFactor
- Коэффициент забывания взвешивания0.9
(по умолчанию) | скаляром в области значений (0,1]Задайте экспоненциальное взвешивание как скалярное значение, больше 0 и меньше или равное 1.
Это свойство применяется только когда AveragingMethod
является "Exponential"
.
Откройте Spectrum Settings. В разделе Trace options установите Forgetting factor.
ReferenceLoad
- Эталонная нагрузка1
(по умолчанию) | реальная положительная скалярная величинаЗагрузка, которую используют возможности качестве ссылки для вычисления уровней степени.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Trace options установите Reference load.
FrequencyOffset
- Смещение частоты0
(по умолчанию) | скалярный вектор |Скаляр - применить одно и то же смещение частоты ко всем каналам, заданное в hertz как вектор символов.
Вектор - применить конкретное смещение частоты для каждого канала, задать вектор частот. Длина вектора должна быть равна количеству входа каналов.
Значения оси частоты смещены на значения, заданные в этом свойстве. Общий диапазон должен попадать в частотный интервал Найквиста. Вы можете управлять общим диапазоном различными способами, основанными на том, как вы устанавливаете FrequencySpan
свойство.
Настраиваемый: Да
Откройте Spectrum Settings. В разделе Trace options установите Offset (Hz).
SpectrogramChannel
- Канал, для которого нанесена спектрограмма1
(по умолчанию) | положительное скалярное целое числоЗадайте канал, для которого строится спектрограмма, как действительное, положительное скалярное целое число в область значений [1 N], где N количество входа каналов.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrogram"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В Spectrogram options разделе выберите Channel.
TimeResolutionSource
- Источник значения разрешения по времени"Auto"
(по умолчанию) | "Property"
Укажите источник разрешения по времени для каждой линии спектрограммы как "Auto"
или "Property"
. Свойство TimeResolution показывает разрешение по времени для различных методов частотного разрешения и свойств временного разрешения.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrogram"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В разделе Spectrogram options установите Time res (s).
Типы данных: char
| string
TimeResolution
- Разрешение по времени0.001
(по умолчанию) | положительная скалярная величинаЗадайте разрешение по времени для каждой линии спектрограммы как положительная скалярная величина, выраженное в секундах.
Значение временного разрешения определяется на основе метода частотного разрешения, настройки RBW и настройки временного разрешения.
Метод | Метод частотного разрешения | Настройка частотного разрешения | Настройка временного разрешения | Результирующее разрешение по времени в секундах |
---|---|---|---|---|
Welch или Filter Bank | RBW (Hz) | Auto | Auto | 1/RBW |
Welch или Filter Bank | RBW (Hz) | Auto | Введенный вручную | Разрешение по времени |
Welch или Filter Bank | RBW (Hz) | Введенный вручную | Auto | 1/RBW |
Welch или Filter Bank | RBW (Hz) | Введенный вручную | Введенный вручную | Должно быть равно или больше минимального достижимого разрешения по времени, 1/RBW. Несколько спектральных оценок объединяют в одну спектрограммную линию для получения желаемого временного разрешения. Интерполяция используется для получения значений временного разрешения, которые не являются целочисленными кратными 1/RBW. |
Welch | Window length | — | Auto | 1/RBW |
Welch | Window length | — | Введенный вручную | Должно быть равно или больше минимального достижимого разрешения по времени. Несколько спектральных оценок объединяют в одну спектрограммную линию для получения желаемого временного разрешения. Интерполяция используется для получения значений временного разрешения, которые не являются целочисленными кратными 1/RBW. |
Filter Bank | Number of frequency bands | — | Auto | 1/RBW |
Filter Bank | Number of frequency bands | — | Введенный вручную | Должно быть равно или больше минимального достижимого разрешения по времени, 1/RBW. |
Настраиваемый: Да
Чтобы включить это свойство, установите:
ViewType для "Spectrogram"
или "Spectrum and spectrogram"
Источник TimeResolutionSource для "Property
.
Откройте Spectrum Settings. В Spectrogram options разделе в поле Time res (s) введите число.
TimeSpanSource
- Источник значения промежутка времени"Auto"
(по умолчанию) | "Property"
Укажите источник для временного интервала спектрограммы как "Auto"
или "Property"
. Если вы задаете это свойство равным "Auto"
спектрограмма отображает 100 спектрограмм линий в любое заданное время. Если вы задаете это свойство равным "Property"
спектрограмма использует время, длительность вы задаете в секундах в свойстве TimeSpan.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrogram"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В разделе Spectrogram options установите Time span (s).
Типы данных: char
| string
TimeSpan
- Промежуток времени0.1
(по умолчанию) | положительная скалярная величинаЗадайте интервал времени отображения спектрограммы в секундах. Необходимо установить временной интервал, по крайней мере, в два раза больше, чем длительность количества выборок, необходимых для спектрального обновления.
Настраиваемый: Да
Чтобы включить это свойство, установите:
ViewType для "Spectrogram"
или "Spectrum and spectrogram"
.
Источник TimeSpanSource для "Property"
.
Откройте Spectrum Settings. В Spectrogram options разделе в поле Time span (s) введите число.
MeasurementChannel
- Канал, для которого получены измерения1
(по умолчанию) | положительное целое числоКанал, для которого получены измерения, заданный как действительное, положительное целое число, больше 0 и меньше или равное 100. Максимальное количество, которое вы можете задать, это количество каналов (столбцов) в входном сигнале.
Настраиваемый: Да
Нажмите на Tools > Measurements и откройте настройки Trace Selection.
Типы данных: double
SpectralMask
- Спектральные маскирующие линииSpectralMaskSpecification
объектЗадайте, отображать ли верхние и более низкие спектральные линии маски на спектр графике. Это свойство использует SpectralMaskSpecification
свойства, чтобы включить и сконфигурировать спектральные маски. The SpectralMaskSpecification
свойствами являются:
EnabledMasks
- Маски для включения, заданные как вектор символов или строка. Допустимые значения "None"
, "Upper"
, "Lower"
, или "Upper and lower"
.
По умолчанию: "None"
UpperMask
- Верхняя предельная спектральная маска, заданная как скалярная или двухколоночная матрица. Если UpperMask
является скаляром, маска верхнего предела использует значение степени скаляра для всех значений частоты, применимых к анализатору спектра. Если UpperMask
является матрицей, первый столбец содержит частотные значения (Гц), которые соответствуют x значениям оси. Второй столбец содержит значения степени, которые соответствуют связанным y значениям оси. Чтобы применить смещения к значениям степени и частоты, используйте ReferenceLevel
и MaskFrequencyOffset
значения свойств, соответственно.
По умолчанию: Inf
LowerMask
- Нижняя предельная спектральная маска, заданная как скалярная или двухколоночная матрица. Если LowerMask
является скаляром, маска нижнего предела использует значение степени скаляра для всех значений частоты, применимых к анализатору спектра. Если LowerMask
является матрицей, первый столбец содержит частотные значения (Гц), которые соответствуют x значениям оси. Второй столбец содержит значения степени, которые соответствуют связанным y значениям оси. Чтобы применить смещения к значениям степени и частоты, используйте ReferenceLevel
и MaskFrequencyOffset
значения свойств, соответственно.
По умолчанию: -Inf
ReferenceLevel
- Базовый уровень для значений степени маски, заданный как "Custom"
или "Spectrum peak"
. Когда ReferenceLevel
является "Custom"
, а CustomReferenceLevel
значение свойства используется как ссылка на значения степени, в дБр, в UpperMask
и LowerMask
свойства. Когда ReferenceLevel
является "Spectrum peak"
, пиковое значение текущего спектра SelectedChannel
используется.
По умолчанию: "Custom"
CustomReferenceLevel
- Пользовательский базовый уровень, заданный как действительное значение, в тех же модулях, что и модули степени. Базовый уровень является значением, к которому относятся значения степени в UpperMask
и LowerMask
ссылки на свойства. Это свойство применяется при ReferenceLevel
установлено в "Custom"
. Это свойство использует те же модули, что и PowerUnits
свойство анализатора спектра.
По умолчанию: 0
SelectedChannel
- Входной канал с пиковым спектром для использования в качестве базового уровня маски, заданного как целое число. Это свойство применяется при ReferenceLevel
установлено в "Spectrum peak"
.
По умолчанию: 1
MaskFrequencyOffset
- Смещение частоты, заданное как конечный, числовой скаляр. Смещение частоты - это величина смещения, которая применяется к значениям частоты в UpperMask
и LowerMask
свойства.
По умолчанию: 0
Все SpectralMaskSpecification
свойства настраиваются.
Маски накладываются на спектр. Если маска зеленая, сигнал пропускает ограничения маски. Если маска красная, сигнал нарушает пределы маски.
Проверить состояние спектральной маски можно с помощью любого из следующих методов:
Чтобы изменить спектральную маску и увидеть статус спектральной маски, на панели инструментов возможностей, выберите кнопку спектральной маски,. На открывшейся панели Spectral Mask можно изменить маски и просмотреть подробную информацию о том, какой процент времени успешного выполнения маски, какая маска не работает, сколько раз маска выходила из строя и какие каналы приводят к отказу.
Чтобы получить текущее состояние спектральных масок, вызовите функцию getSpectralMaskStatus
.
Чтобы выполнять действие каждый раз, когда маска прекращает работать, используйте MaskTestFailed
событие. Чтобы запустить функцию, когда маска не работает, создайте прослушиватель к MaskTestFailed
и задайте функцию обратного вызова для запуска. Дополнительные сведения об использовании событий см. в разделе События.
Настраиваемый: Да
Откройте панель Spectral Mask и измените опции Settings.
PeakFinder
- Измерение Peak finderPeakFinderSpecification
объектВключите peak finder для вычисления и отображения самых больших вычисленных пиковых значений. The PeakFinder
свойство использует PeakFinderSpecification
свойства.
The PeakFinderSpecification
свойствами являются:
MinHeight
- Уровень, выше которого обнаруживаются peaks, задается в виде скалярного значения.
По умолчанию: -Inf
NumPeaks
- Максимальное количество peaks, заданное как положительный целочисленный скаляр менее 100.
По умолчанию: 3
MinDistance
- Минимальное количество выборок между соседним peaks, заданное как положительный действительный скаляр.
По умолчанию: 1
Threshold
- Минимальное различие высот между пиком и его соседними выборками, заданная в виде неотрицательного действительного скаляра.
По умолчанию: 0
LabelFormat
-- Координаты для отображения рядом с вычисленным пиковым значением, заданным в виде вектора символов или строкового скаляра. Допустимые значения "X"
, "Y"
, или "X + Y"
.
По умолчанию: "X + Y"
Enable
-- Установите это свойство на true
для включения пиковых измерений. Допустимые значения true
или false
.
По умолчанию: false
Все PeakFinderSpecification
свойства настраиваются.
Настраиваемый: Да
Откройте панель Peak Finder () и измените опции Settings.
CursorMeasurements
- Измерения курсораCursorMeasurementsSpecification
объектВключите измерения курсора, чтобы отобразить экран или курсоры формы волны. The CursorMeasurements
свойство использует CursorMeasurementsSpecification
свойства.
The CursorMeasurementsSpecification
свойствами являются:
Type
-- Тип курсора отображения, заданный как "Screen cursors"
или "Waveform cursors"
.
По умолчанию: "Waveform cursors"
ShowHorizontal
-- Установите это свойство на true
отображение горизонтальных экранных курсоров. Это свойство применяется, когда вы устанавливаете Type
свойство к "Screen cursors"
.
По умолчанию: true
ShowVertical
-- Установите это свойство на true
для отображения вертикальных экранных курсоров. Это свойство применяется, когда вы устанавливаете Type
свойство к "Screen cursors"
.
По умолчанию: true
Cursor1TraceSource
-- Укажите источник курсора 1 формы волны как положительный действительный скаляр. Это свойство применяется, когда вы устанавливаете Type
свойство к "Waveform cursors"
.
По умолчанию: 1
Cursor2TraceSource
-- Укажите источник курсора 2 формы волны как положительный действительный скаляр. Это свойство применяется, когда вы устанавливаете Type
свойство к "Waveform cursors"
.
По умолчанию: 1
LockSpacing
- Блокировка интервала между курсорами, заданная как логический скаляр.
По умолчанию: false
SnapToData
- Привязка курсоров к данным, заданная как логический скаляр.
По умолчанию: true
XLocation
- x-координаты курсоров, заданные как вектор действительных чисел длины, равная 2.
По умолчанию: [-2500 2500]
YLocation
- y-координаты курсоров, заданные как вектор действительных чисел длины, равная 2. Это свойство применяется, когда вы устанавливаете Type
свойство к "Screen cursors"
.
По умолчанию: [-55 5]
Enable
-- Установите это свойство на true
чтобы включить измерения курсора. Допустимые значения true
или false
.
По умолчанию: false
Все CursorMeasurementsSpecification
свойства настраиваются.
Откройте панель Cursor Measurements () и измените опции Settings.
ChannelMeasurements
- Измерения в каналеChannelMeasurementsSpecification
объектВключите измерения в канале для вычисления и отображения занимаемой полосы или смежного коэффициента степени канала. The ChannelMeasurements
свойство использует ChannelMeasurementsSpecification
свойства.
The ChannelMeasurementsSpecification
свойствами являются:
Algorithm
-- Тип отображаемых данных измерений, заданный как "Occupied BW"
или "ACPR"
.
По умолчанию: "Occupied BW"
FrequencySpan
- Режим частотного диапазона, заданный как "Span and center frequency"
или "Start and stop frequencies"
По умолчанию: "Span and center frequency"
Span
- Частотный диапазон, по которому вычисляются измерения канала, заданный как действительный, положительный скаляр в Гц. Это свойство применяется, когда вы устанавливаете FrequencySpan
свойство к "Span and center frequency"
.
По умолчанию: 2000
Hz
CenterFrequency
- Центральная частота диапазона, над которым вычисляются измерения канала, заданная как действительный скаляр в Гц. Это свойство применяется, когда вы устанавливаете FrequencySpan
свойство к "Span and center frequency"
.
По умолчанию: 0
Hz
StartFrequency
- Стартовая частота, на которой вычисляются измерения канала, заданная как действительный скаляр в Гц. Это свойство применяется, когда вы устанавливаете FrequencySpan
свойство к "Start and stop frequencies"
.
По умолчанию: -1000
Hz
StopFrequency
- Частота остановки, на которой вычисляются измерения канала, заданная как действительный скаляр в Гц. Это свойство применяется, когда вы устанавливаете FrequencySpan
свойство к "Start and stop frequencies"
.
По умолчанию: 1000
Hz
PercentOccupiedBW
- Процент степени, над которыми можно вычислить занимаемую полосу, заданный как положительный действительный скаляр. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "Occupied BW"
.
По умолчанию: 99
NumOffsets
- Количество смежных пар канала, заданное как действительное, положительное целое число. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "ACPR"
.
По умолчанию: 2
AdjacentBW
- Смежная полоса пропускания канала, заданная как действительный, положительный скаляр. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "ACPR"
.
По умолчанию: 1000
FilterShape
- Форма фильтра для обоих основных и смежных каналов, заданная как "None"
, "Gaussian"
, или "RRC"
. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "ACPR"
.
По умолчанию: "None"
FilterCoeff
- Коэффициент фильтра канала, заданный как действительный скаляр между 0
и 1
. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "ACPR"
и FilterShape
свойство любому из "Gaussian"
или "RRC"
.
По умолчанию: 0.5
ACPROffsets
- Частота смежного канала относительно центральной частоты основного канала, заданная как вектор действительных чисел длины, равная количеству пар смещения, заданному в NumOffsets
. Это свойство применяется, когда вы устанавливаете Algorithm
свойство к "ACPR"
.
По умолчанию: [2000 3500]
Enable
-- Установите это свойство на true
для включения измерений в канале. Допустимые значения true
или false
.
По умолчанию: false
Все ChannelMeasurementsSpecification
свойства настраиваются.
Откройте панель Channel Measurements () и измените опции Measurement и Channel Settings.
DistortionMeasurements
- Измерения искаженийDistortionMeasurementsSpecification
объектВключите измерения искажения для вычисления и отображения гармонических искажений и интермодуляционных искажений. The DistortionMeasurements
свойство использует DistortionMeasurementsSpecification
свойства.
The DistortionMeasurementsSpecification
свойствами являются:
Algorithm
-- Тип отображаемых данных измерений, заданный как "Harmonic"
или "Intermodulation"
.
По умолчанию: "Harmonic"
NumHarmonics
- Количество измеряемых гармоник, заданное как действительное, положительное целое число. Это свойство применяется, когда вы устанавливаете Algorithm
на "Harmonic"
.
По умолчанию: 6
Enable
-- Установите это свойство на true
чтобы включить измерения искажений.
По умолчанию: false
Все DistortionMeasurementsSpecification
свойства настраиваются.
Откройте панель Distortion Measurements () и измените опции Distortion и Harmonics.
CCDFMeasurements
- измерения CCDFCCDFMeasurementsSpecification
объект Включите измерения CCDF, чтобы отобразить вероятность того, что мгновенная степень входного сигнала будет на некоторое количество дБ выше средней степени сигнала. The CCDFMeasurements
свойство использует CCDFMeasurementsSpecification
свойства.
The CCDFMeasurementsSpecification
свойствами являются:
PlotGaussianReference
- Показать ссылке кривую CCDF аддитивного белого Гауссова шума. Установите это свойство на true
для построения опорной кривой CCDF.
По умолчанию: false
Enable
-- Установите это свойство на true
для включения измерений CCDF. Допустимые значения true
или false
.
По умолчанию: false
Все CCDFMeasurementsSpecification
свойства настраиваются.
Откройте панель CCDF Measurements () и включите опцию Plot Gaussian reference.
Name
- Имя окна"Spectrum Analyzer"
(по умолчанию) | символьный вектор | строковый скалярЗаголовок окна возможностей.
Настраиваемый: Да
Типы данных: char
| string
Position
- Положение окна[left bottom width height]
Положение окна анализатора спектра в пикселях, заданное размером и расположением окна возможностей как четырехэлементный двухэлементный вектор вида [левая нижняя часть]. Можно поместить окно возможностей в определенное положение на экране путем изменения значений этого свойства.
По умолчанию окно появляется в центре экрана с шириной 800
пиксели и высота 450
пиксели. Точные координаты центра зависят от разрешения экрана.
Настраиваемый: Да
PlotType
- Тип графика для нормальных трассировок"Line"
(по умолчанию) | "Stem"
Укажите тип графика, который будет использоваться для отображения нормальных трассировок как "Line"
или "Stem"
. Нормальные трассировки являются трассировками, которые отображают свободнопроходимые спектральные оценки.
Настраиваемый: Да
Чтобы включить это свойство, установите:
ViewType для "Spectrum"
или "Spectrum and spectrogram"
PlotNormalTrace для true
Откройте свойства Style и установите Plot type.
Типы данных: char
| string
PlotNormalTrace
- Флаг нормальной трассировкиtrue
(по умолчанию) | false
Установите это свойство на false
чтобы удалить отображение нормальных трассировок. Эти следы отображают свободнопроходимые спектральные оценки. Даже когда следы удаляются с отображения, анализатор спектра продолжает свои спектральные расчеты.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В Trace options разделе выберите Normal trace.
Типы данных: logical
PlotMaxHoldTrace
- Флаг трассировки Max-holdfalse
(по умолчанию) | true
Чтобы вычислить и построить график максимального удержания спектра каждого входного канала, установите это свойство равным true
. Спектр с максимальным удержанием в каждом частотном интервале вычисляется путем сохранения максимального значения всех оценок спектра степени. При переключении этого свойства анализатор спектра сбрасывает свои расчеты с максимальным удержанием.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В Trace options разделе выберите Max-hold trace.
Типы данных: logical
PlotMinHoldTrace
- флаг трассировки Мин-удержанияfalse
(по умолчанию) | true
Чтобы вычислить и построить график минимально удерживаемого спектра каждого входного канала, установите это свойство равным true
. Спектр с минимальным удержанием в каждом частотном интервале вычисляется путем сохранения минимального значения всех оценок спектра степени. Когда вы включаете это свойство, анализатор спектра сбрасывает свои минимально удерживаемые расчеты.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum"
или "Spectrum and spectrogram"
.
Откройте Spectrum Settings. В Trace options разделе выберите Min-hold trace.
Типы данных: logical
ReducePlotRate
- Улучшите эффективность при сниженной скорости графикаtrue
(по умолчанию) | false
Скорость симуляции выше, если для этого свойства задано значение true
.
true
- возможности регистрации регистрирует данные для дальнейшего использования и обновляет отображение с фиксированными интервалами времени. Данные, происходящие между этими фиксированными интервалами, могут не быть нанесены.
false
- возможности обновляются каждый раз, когда она вычисляет спектр степени. Используйте false
установка, когда вы не хотите пропускать какие-либо спектральные обновления за счет более медленной скорости симуляции.
Настраиваемый: Да
Выберите Playback > Reduce plot rate to improve performance.
Title
- Отобразить заголовок''
(по умолчанию) | символьный вектор | строковый скалярЗадайте заголовок отображения как вектор символов или строку.
Настраиваемый: Да
Откройте Configuration Properties. Установите Title.
Типы данных: char
| string
YLabel
- Метка оси Y''
(по умолчанию) | символьный вектор | строковый скалярЗадайте текст области видимости слева от оси y.
Независимо от этого свойства, Spectrum Analyzer всегда отображает модули степени как один из SpectrumUnits
значения.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum"
или "Spectrum and spectrogram"
.
Откройте Configuration Properties. Установите Y-label.
Типы данных: char
| string
ShowLegend
- Показать легендуfalse
(по умолчанию) | true
Чтобы показать легенду с входными именами, задайте для этого свойства значение true
.
Из легенды можно управлять, какие сигналы видны. Этот элемент управления эквивалентен изменению видимости в диалоговом окне Style. В легенде возможностей щелкните имя сигнала, чтобы скрыть сигнал в возможности. Чтобы отобразить сигнал, снова щелкните имя сигнала. Чтобы показать только один сигнал, щелкните правой кнопкой мыши имя сигнала. Чтобы показать все сигналы, нажмите Esc.
Примечание
Легенда показывает только первые 20 сигналов. Никакие дополнительные сигналы не могут быть просмотрены или управлены из легенды.
Настраиваемый: Да
Откройте Configuration Properties. На вкладке Display выберите Show legend.
Типы данных: logical
ChannelNames
- Имена каналовЗадайте имена входных каналов как массив ячеек из векторов символов. Имена появляются в легенде, Style диалоговом окне и Measurements панелях. Если вы не задаете имена, каналы помечаются как Channel 1
, Channel 2
, и т.д.
Настраиваемый: Да
Чтобы увидеть имена каналов, задайте ShowLegend
на true
.
В легенде дважды кликните имя канала.
Типы данных: char
ShowGrid
- Видимость сеткиtrue
(по умолчанию) | false
Установите это свойство на true
отображение линий сетки на графике.
Настраиваемый: Да
Откройте Configuration Properties. На вкладке Display установите Show grid.
Типы данных: logical
YLimits
- пределы оси Y[-80, 20]
(по умолчанию) | [ymin ymax]
Задайте y пределы по осям как двухэлементный числовой вектор, [ymin ymax]
.
Пример: scope.YLimits = [-10,20]
Настраиваемый: Да
Чтобы включить это свойство, задайте значение свойства ViewType "Spectrum"
или "Spectrum and spectrogram"
.
Модули напрямую зависят от свойства SpectrumUnits.
Откройте Configuration Properties. Установите Y-limits (maximum) и Y-limits (minimum).
ColorLimits
- Масштабные пределы цвета спектрограммы[-80, 20]
(по умолчанию) | [colorMin colorMax]
Управление пределами цвета спектрограммы с помощью двухэлементного числового вектора, [colorMin colorMax]
.
Пример: scope.ColorLimits = [-10,20]
Чтобы включить это свойство, задайте значение свойства ViewType "Spectrogram"
или "Spectrum and spectrogram"
.
Модули напрямую зависят от SpectrumUnits
свойство.
Откройте Configuration Properties. Установите Color-limits (minimum) и Color-limits (maximum).
AxesScaling
- Режим масштабирования осей"Auto"
(по умолчанию) | "Manual"
| "OnceAtStop"
| "Updates"
Задайте, когда возможности автоматически масштабируют оси. Допустимые значения:
"Auto"
- возможности масштабируют оси по мере необходимости, чтобы соответствовать данным, как во время, так и после симуляции.
"Manual"
- возможности не масштабируется автоматически.
"OnceAtStop"
- возможности масштабируют оси, когда симуляция останавливается.
"Updates"
- возможности видимости масштабируют оси один раз после 10 обновлений.
Выберите Tools > Axes Scaling.
Типы данных: char
| string
AxesLayout
- Ориентация спектра и спектрограммы"Vertical"
(по умолчанию) | "Horizontal"
Укажите тип размещения следующим "Horizontal"
или "Vertical"
. Вертикальное размещение складывает спектр выше спектрограммы. Горизонтальное размещение помещает два вида один за другим.
Настраиваемый: Да
Чтобы включить это свойство, установите значение ViewType на "Spectrum and spectrogram"
.
Откройте Spectrum Settings. Установите Axes layout.
Типы данных: char
| string
scope(
обновляет спектр сигнала в анализаторе спектра.signal
)
scope(signal1,signal2,...,signalN)
отображает несколько сигналов в анализаторе спектра. Сигналы должны иметь ту же длину системы координат, но могут варьироваться в количестве каналов. Вы должны задать NumInputPorts
свойство для включения нескольких входных сигналов.
signal
- Входной сигнал или сигналы для визуализацииЗадайте один или несколько входных сигналов для визуализации в dsp.SpectrumAnalyzer
. Сигналы могут иметь разное количество каналов, но должны иметь ту же длину системы координат.
Пример: scope(signal1, signal2)
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
generateScript | Сгенерируйте скрипт MATLAB, чтобы создать возможности с текущими настройками |
getMeasurementsData | Получите данные измерений тока, отображенные на анализаторе спектра |
getSpectralMaskStatus | Получите результаты тестирования текущей спектральной маски |
getSpectrumData | Сохраните данные спектра, показанные в спектральном анализаторе |
isNewDataReady | Проверьте спектральный анализатор на наличие новых данных |
Просмотрите односторонний спектр степени, полученный из суммы фиксированных действительных синусоид с различными амплитудами и частотами.
Fs = 100e6; % Sampling frequency fSz = 5000; % Frame size sin1 = dsp.SineWave(1e0, 5e6,0,'SamplesPerFrame',fSz,'SampleRate',Fs); sin2 = dsp.SineWave(1e-1,15e6,0,'SamplesPerFrame',fSz,'SampleRate',Fs); sin3 = dsp.SineWave(1e-2,25e6,0,'SamplesPerFrame',fSz,'SampleRate',Fs); sin4 = dsp.SineWave(1e-3,35e6,0,'SamplesPerFrame',fSz,'SampleRate',Fs); sin5 = dsp.SineWave(1e-4,45e6,0,'SamplesPerFrame',fSz,'SampleRate',Fs); scope = dsp.SpectrumAnalyzer; scope.SampleRate = Fs; scope.SpectralAverages = 1; scope.PlotAsTwoSidedSpectrum = false; scope.RBWSource = 'Auto'; scope.PowerUnits = 'dBW'; for idx = 1:1e2 y1 = sin1(); y2 = sin2(); y3 = sin3(); y4 = sin4(); y5 = sin5(); scope(y1+y2+y3+y4+y5+0.0001*randn(fSz,1)); end
Запуск release
метод, позволяющий изменить значения свойств и входные характеристики. Область возможностей автоматически масштабирует оси.
release(scope)
Запуск clear
функция для закрытия окна Spectrum Analyzer.
clear('scope');
Этот пример показывает спектрограмму для щебета-сигнала с добавленным случайным шумом.
Fs = 233e3; frameSize = 20e3; chirp = dsp.Chirp('SampleRate',Fs,... 'SamplesPerFrame',frameSize,... 'InitialFrequency',11e3,... 'TargetFrequency',11e3+55e3); scope = dsp.SpectrumAnalyzer('SampleRate',Fs); scope.ViewType = 'Spectrogram'; scope.RBWSource = 'Property'; scope.RBW = 500; scope.TimeSpanSource = 'Property'; scope.TimeSpan = 2; scope.PlotAsTwoSidedSpectrum = false; for idx = 1:50 y = chirp()+ 0.05*randn(frameSize,1); scope(y); end release(scope)
Просмотрите двустороннюю степень спектр синусоиды с шумом на анализаторе спектра.
sin = dsp.SineWave('Frequency',100,'SampleRate',1000); sin.SamplesPerFrame = 1000; scope = dsp.SpectrumAnalyzer('SampleRate',sin.SampleRate); for ii = 1:250 x = sin() + 0.05*randn(1000,1); scope(x); end
Запуск release
метод изменения значений свойств и входных характеристик. Область возможностей автоматически масштабирует оси. Он обновляет отображение еще раз, если какие-либо данные находятся во внутреннем буфере.
release(scope);
Запустите MATLAB clear
функция для закрытия окна Spectrum Analyzer.
clear('scope');
Используйте Анализатор Спектра, чтобы отобразить частотный вход из спектральных оценок синусоидов, встроенных в белый Гауссов шум.
Инициализация
Инициализируйте два dsp.SpectrumEstimator
отображаемые объекты. Установите один объект, чтобы использовать основанный на Уэлче метод спектральной оценки с окном Ханна, установите другой объект, используя оценку банка фильтров. Задайте входной сигнал шумной синусоиды с четырьмя синусоидами в 0,16, 0,2, 0,205 и 0,25 циклов/выборка. Просмотрите спектральную оценку, используя третий объект, анализатор спектра, установленный для обработки входа частоты.
FrameSize = 420; Fs = 1; Frequency = [0.16 0.2 0.205 0.25]; sinegen = dsp.SineWave('SampleRate',Fs,'SamplesPerFrame',FrameSize,... 'Frequency',Frequency,'Amplitude',[2e-5 1 0.05 0.5]); NoiseVar = 1e-10; numAvgs = 8; hannEstimator = dsp.SpectrumEstimator('PowerUnits','dBm',... 'Window','Hann','FrequencyRange','onesided',... 'SpectralAverages',numAvgs,'SampleRate',Fs); filterBankEstimator = dsp.SpectrumEstimator('PowerUnits','dBm',... 'Method','Filter bank','FrequencyRange','onesided',... 'SpectralAverages',numAvgs,'SampleRate',Fs); spectrumPlotter = dsp.SpectrumAnalyzer('InputDomain','Frequency',... 'SampleRate',Fs/FrameSize,... 'SpectrumUnits','dBm','YLimits',[-120,40],... 'PlotAsTwoSidedSpectrum',false,... 'ChannelNames',{'Hann window','Filter bank'},'ShowLegend',true);
Вытекание
Поток входов. Сравните спектральные оценки в анализаторе спектра.
for i = 1:1000 x = sum(sinegen(),2) + sqrt(NoiseVar)*randn(FrameSize,1); Pse_hann = hannEstimator(x); Pfb = filterBankEstimator(x); spectrumPlotter([Pse_hann,Pfb]) end
dsp.SpectrumAnalyzer
Системный объектВычислите и отобразите степень спектр шумного синусоидального входного сигнала с помощью dsp.SpectrumAnalyzer
Системный объект. Измерьте peaks, расположения курсоров, отношение степени смежного канала, искажения и значения CCDF в спектре, обеспечив следующие свойства:
PeakFinder
CursorMeasurements
ChannelMeasurements
DistortionMeasurements
CCDFMeasurements
Инициализация
Вход синусоиды имеет две частоты: 1000 Гц и 5000 Гц. Создайте два dsp.SineWave
Системные объекты для генерации этих двух частот. Создайте dsp.SpectrumAnalyzer
Системный объект для вычисления и отображения спектра степени.
Fs = 44100; Sineobject1 = dsp.SineWave('SamplesPerFrame',1024,'PhaseOffset',10,... 'SampleRate',Fs,'Frequency',1000); Sineobject2 = dsp.SineWave('SamplesPerFrame',1024,... 'SampleRate',Fs,'Frequency',5000); SA = dsp.SpectrumAnalyzer('SampleRate',Fs,'Method','Filter bank',... 'SpectrumType','Power','PlotAsTwoSidedSpectrum',false,... 'ChannelNames',{'Power spectrum of the input'},'YLimits',[-120 40],'ShowLegend',true);
Включите данные измерений
Чтобы получить измерения, установите Enable
свойство измерений к true
.
SA.CursorMeasurements.Enable = true; SA.ChannelMeasurements.Enable = true; SA.PeakFinder.Enable = true; SA.DistortionMeasurements.Enable = true;
Использование getMeasurementsData
Поток в входном сигнале шумной синусоиды и оцените спектр степени сигнала с помощью анализатора спектра. Измерьте характеристики спектра. Используйте getMeasurementsData
функция для программного получения этих измерений. The isNewDataReady
функция указывает, когда есть новые данные спектра. Измеренные данные хранятся в переменной data
.
data = []; for Iter = 1:1000 Sinewave1 = Sineobject1(); Sinewave2 = Sineobject2(); Input = Sinewave1 + Sinewave2; NoisyInput = Input + 0.001*randn(1024,1); SA(NoisyInput); if SA.isNewDataReady data = [data;getMeasurementsData(SA)]; end end
Правая сторона анализатора спектра показывает включённые панели измерения. Значения, показанные на этих панелях, совпадают со значениями, показанными на последнем временном шаге data
переменная. Вы можете получить доступ к отдельным полям data
для программного получения различных измерений.
Сравнение пиковых значений
Пиковые значения получаются PeakFinder
свойство. Проверьте, что пиковые значения, полученные на последнем временном шаге data
соответствовать значениям, показанным на графике анализатора спектра.
peakvalues = data.PeakFinder(end).Value
peakvalues = 3×1
26.9850
24.1735
-52.3506
frequencieskHz = data.PeakFinder(end).Frequency/1000
frequencieskHz = 3×1
4.9957
0.9905
7.8166
Чтобы закрыть окно возможностей и очистить связанные с ним данные, используйте MATLAB® clear
функция.
Чтобы скрыть или показать окно возможностей, используйте hide
и show
функций.
Используйте MATLAB mcc
функция для компиляции кода, содержащего анализатор спектра.
Вы не можете открыть диалоговые окна строения анализатора спектра, если в приложении есть несколько скомпилированных компонентов.
Когда вы выбираете Welch
способ, при котором оценивают спектральную степень, усредняют модифицированные периодограммы.
Учитывая вход сигнала, x
, Спектральный Анализатор делает следующее:
Умножает x
по заданному окну и масштабирует результат по степени окна. Анализатор спектра использует RBW
или Window Length
настройка на панели Spectrum Settings для определения длины окна данных.
Вычисляет БПФ сигнала, Y
, и принимает квадратную величину, используя Z = Y.*conj(Y)
.
Вычисляет текущую оценку спектра степени путем взятия скользящего среднего значения последнего N числа Z "с и масштабирует ответ по частоте дискретизации. Для получения дополнительной информации о методах скользящего среднего смотрите Метод усреднения.
Спектральный анализатор требует, чтобы минимальное количество выборок для вычисления спектральной оценки. Это количество входных выборок, необходимых для вычисления одного спектрального обновления, показано следующим Samples/update на панели Main options. Это значение непосредственно связано с шириной полосы разрешения, RBW, следующим уравнением, или с длиной окна, уравнением, показанным на шаге 2.
Нормированная эффективная шумовая полоса, NENBW, является фактором, который зависит от метода оконной обработки. Анализатор спектра показывает значение NENBW на панели Window Options панели Spectrum Settings. Процент перекрытия, Op - это значение параметра Overlap % на панели Window Options панели Spectrum Settings. Fs - частота дискретизации входного сигнала. Анализатор спектра показывает частоту дискретизации на панели Main Options панели Spectrum Settings.
В RBW (Hz) режиме длина окна, необходимая для вычисления одного спектрального обновления, Nwindow, непосредственно связана с пропускной способностью разрешения и нормализованной эффективной шумовой полосой:
В Window Length режиме длина окна задается следующим образом.
Количество входа отсчетов, необходимых для вычисления одного спектрального обновления, Nsamples, непосредственно связано с длиной окна и величиной перекрытия следующим уравнением.
Когда вы увеличиваете процент перекрытия, требуется меньше новых входных выборок, чтобы вычислить новое спектральное обновление. Для примера, если длина окна составляет 100, то количество входа выборок, необходимых для вычисления одного спектрального обновления, приводится как показано в следующей таблице.
Op | Nsamples |
---|---|
0% | 100 |
50% | 50 |
80% | 20 |
Нормированная эффективная шумовая полоса, NENBW, является параметром окна, определяемым длиной окна, Nwindow и типом используемого окна. Если w (n) обозначает вектор Nwindow коэффициентов окна, то NENBW задается следующим уравнением .
Когда вы находитесь в RBW (Hz) режиме, можно задать пропускную способность разрешения, используя значение параметра RBW (Hz) на панели Main options панели Spectrum Settings. Необходимо задать значение, чтобы убедиться, что существует по крайней мере два интервала RBW в указанном диапазоне частот. Отношение общего диапазона к RBW должно быть больше двух:
По умолчанию для параметра RBW (Hz) на панели Main options задано значение Auto
. В этом случае анализатор спектра определяет соответствующее значение, чтобы убедиться, что существует 1024 интервала RBW на заданном частотном диапазоне. Когда вы задаете RBW (Hz) Auto
, RBW вычисляется как:
Когда вы находитесь в Window Length режиме, задаете Nwindow, и результат RBW следующий:
Иногда количества входа выборок недостаточно для достижения заданной полосы пропускания разрешения. Когда происходит эта ситуация, Spectrum Analyzer отображает сообщение:
Анализатор спектра удаляет это сообщение и отображает спектральную оценку, когда достаточно данных было введено.
Примечание
Количество точек БПФ (Nfft) не зависит от длины окна (Nwindow). Можно задать им различные значения, если Nfft больше или равно Nwindow.
Когда вы выбираете Filter Bank
метод, анализатор спектра использует банк фильтров анализа, чтобы оценить спектр степени.
Банк фильтра разделяет широкополосный входной сигнал, x(n), частоты дискретизации fs, в несколько узких сигналов полосы, y0(m), y1(m)..., yM-1(m), частоты дискретизации fs/M .
Переменная M представляет количество полос частот в группе фильтров. Когда для метода частотного разрешения задано значение NumFrequencyBands
M равно значению, заданному для количества полос. Когда для метода частотного разрешения задано значение RBW
M равно количеству точек данных, которые необходимы для достижения заданного значения RBW или 1024, в зависимости от того, какое значение больше. Количество отводов на частоту полосы задает количество коэффициентов фильтра для каждой частотной полосы группы фильтров. Общее количество коэффициентов фильтра равно количеству отводов на полосу значений, умноженных на количество полос частот, M. Для получения дополнительной информации о банке фильтров анализа и о том, как он реализован, смотрите разделы More About и Algorithm в dsp.Channelizer
.
После того, как широкополосный входной сигнал разделен на несколько узкие полосы, анализатор спектра вычисляет степень в каждой узкой полосе, используя следующее уравнение. Каждое Zi значение становится оценкой степени над этой узкой полосой частот.
L - длина узкополосного сигнала, yi(m) и i = 1, 2,..., M − 1.
Значения степени во всех узких полосах (обозначаемые Zi) образуют вектор Z.
Вектор Z тока усредняется с предыдущими векторами Z с помощью одного из двух методов скользящего среднего: Running или Exponential weating. Выход операции усреднения формирует вектор спектральной оценки. Для получения дополнительной информации о двух методах усреднения, смотрите Метод усреднения.
Анализатор спектра использует свойство RBW (Hz) или Number of frequency band на панели Spectrum Settings, чтобы определить длину входного кадра.
Анализатор спектра требует минимального количества выборок для вычисления спектральной оценки. Это количество входных выборок, необходимых для вычисления одного спектрального обновления, показано следующим Samples/update на панели Main options. Это значение непосредственно связано с пропускной способностью разрешения, RBW, следующим уравнением.
Fs - частота дискретизации входного сигнала. Анализатор спектра показывает частоту дискретизации на панели Main Options панели Spectrum Settings.
Когда вы находитесь в RBW (Hz) режиме, можно задать пропускную способность разрешения, используя значение параметра RBW (Hz) на панели Main options панели Spectrum Settings. Необходимо задать значение, чтобы убедиться, что существует по крайней мере два интервала RBW в указанном диапазоне частот. Отношение общего диапазона к RBW должно быть больше двух:
По умолчанию для параметра RBW на панели Main options задано значение Auto
. В этом случае анализатор спектра определяет соответствующее значение, чтобы убедиться, что существует 1024 интервала RBW на заданном частотном диапазоне. Таким образом, когда вы устанавливаете RBW на Auto
, оно вычисляется следующим уравнением.
Когда вы находитесь в Number of frequency bands режиме, вы задаете размер входного кадра. Когда количество полос частот Auto
полученный RBW является:
Когда количество полос частот задано вручную, результат RBW следующий:
Иногда количества входа выборок недостаточно для достижения заданной полосы пропускания разрешения. Когда происходит эта ситуация, Spectrum Analyzer отображает сообщение:
Анализатор спектра удаляет это сообщение и отображает спектральную оценку, когда достаточно данных было введено.
Когда для свойства PlotAsTwoSidedSpectrum задано значение true
, интервал является герц.
Когда PlotAsTwoSidedSpectrum
для свойства задано значение false
, интервал является герц.
Анализатор спектра вычисляет и строит графики спектра степени, плотности спектра степени и RMS, вычисленных модифицированным Periodogram оценщиком. Для получения дополнительной информации о методе Periodogram см. periodogram
.
Степень спектральная плотность - спектральная плотность степени (PSD) задается следующим уравнением.
В этом уравнении x [n] является дискретным входным сигналом. На каждой входной системе координат анализатор спектра генерирует как можно больше перекрывающихся окон с каждым окном, обозначенным как x(p)[n] и вычисляет их периодограммы. Spectrum Analyzer отображает среднее выполнение P самых современных периодограмм.
Степень спектр - спектр степени является продуктом спектральной плотности степени и полосы пропускания разрешения, как задано следующим уравнением.
Спектрограмма - Вы можете построить график любой степени как спектрограмма. Каждая линия спектрограммы является одной периодограммой. Разрешение по времени каждой линии составляет 1/ RBW, что является минимальным достижимым разрешением. Достижение желаемого разрешения может потребовать объединения нескольких периодограмм. Затем вы используете интерполяцию, чтобы вычислить нецелочисленные значения 1/ RBW. В отображение спектрограмм время прокручивается сверху вниз, поэтому самые последние данные показаны в верхней части отображения. Смещение показывает значение времени, в которое произошел центр самой текущей линии спектрограммы.
Когда установлено значение Auto
вектор частоты для входа частотного диапазона вычисляется программным обеспечением.
Когда для свойства PlotAsTwoSidedSpectrum задано значение true, вектор частоты:
Когда для свойства PlotAsTwoSidedSpectrum задано значение false, вектор частоты:
Занятый BW вычисляется следующим образом.
Вычислите общую степень в измеренной частотной области значений.
Определите нижнее значение частоты. Начиная с самой низкой частоты в области значений и двигаясь вверх, степень, распределенная в каждой частоте, суммируется, пока этот результат не будет
общей степени.
Определите верхнее значение частоты. Начиная с самой высокой частоты в области значений и двигаясь вниз, степень, распределенная в каждой частоте, суммируется, пока результат не достигнет
общей степени.
Шумовая полоса между нижним и верхним значениями частоты степени занимаемой полосы.
Частота на полпути между нижним и верхним значениями частоты является центральной частотой.
Измерения искажения вычисляются следующим образом.
Спектральное содержимое оценивается путем нахождения peaks в спектре. Когда алгоритм обнаруживает пик, он записывает ширину пика и очищает все монотонно уменьшающиеся значения. То есть алгоритм обрабатывает все эти значения так, как если бы они принадлежали пику. Используя этот способ, всёся спектральное содержимое, центрированный при DC (0 Гц), удаляют из спектра и регистрируют количество очищенной полосы пропускания (W0).
Основная степень (P1) определяется из оставшегося максимального значения отображаемого спектра. Локальная оценка (Fe1) основной частоты производится путем вычисления центрального момента степени около пика. Записывается пропускная способность основного содержимого степени (W1). Затем степень от основной удаляется как на шаге 1.
Степень и ширина гармоники высшего порядка (P2, W2, P3, W3, и т.д.) определены по очереди, исследовав частоты, самые близкие к соответствующему несколько из местной оценки (<reservedrangesplaceholder0>). Любое спектральное содержимое, которое монотонно уменьшается относительно гармонической частоты, сначала удаляется из спектра перед переходом к следующей гармонике.
Когда постоянное, основное и гармоническое содержимое удаляется из спектра, степень оставшегося спектра исследуется на его сумму (Premaining), пиковое значение (Pmaxspur) и медианное значение (Pestnoise).
Сумма всей удаленной пропускной способности вычислена как Wsum = W0 + W1 + W2 +... + Wn.
Сумма степеней гармоник второго и высшего порядка вычисляются как Pharmonic = P2 + P3 + P4 +... + Pn.
Сумма степени шума оценивается как:
Где dF - абсолютное различие между интервалами частот, и RBW - полоса пропускания разрешения окна.
Метрики для ОСШ, THD, SINAD и SFDR затем вычисляются из оценок.
Измерения гармонических искажений используют трассировку спектра, показанную на отображении, в качестве входов для измерений. Значение по умолчанию Hann
настройка окна анализатора спектра может показать утечки, которые могут полностью замаскировать шумовой пол измеряемого сигнала.
Гармонические измерения пытаются исправить утечки, игнорируя все содержимое, которое монотонно уменьшается от максимума гармонического peaks. Если утечка окна покрывает более 70% полосы частот в вашем спектре, вы можете увидеть пустое чтение (-) для SNR и SINAD. Если ваше приложение может терпеть увеличенную эквивалентную шумовую полосу (ENBW), рассмотрите использование окна Кайзера с высоким ослаблением (до 330 дБ), чтобы минимизировать спектральные утечки.
Компонент постоянного тока игнорируется.
После окна ширина каждого гармонического компонента маскирует степень шума в окрестности основной частоты и гармоник. Чтобы оценить степень шума в каждой области, анализатор спектра вычисляет медианный уровень шума в негармонических областях спектра. Затем это значение экстраполируется в каждую область.
Nth интермодуляционные продукты порядка происходят при A * F1 + B * F2,
где F1 и F2 являются синусоидальными входными частотами и |<reservedrangesplaceholder4>| + |<reservedrangesplaceholder3>| = N. A и B являются целочисленными значениями.
Для интермодуляционных измерений точка точки пересечения третьего порядка (TOI) вычисляется следующим образом, где P является степенью в децибелах измеренной степени, привязанной к 1 милливатту (дБм):
TOIlower = PF1 + (PF2 - P(2F1-F2) )/2
TOIupper = PF2 + (PF1 - P(2F2-F1) )/2
TOI = + (TOIlower + TOIupper)/2
Скользящее среднее значение вычисляется с помощью одного из двух методов:
Running
- Для каждой системы координат входа среднее значение последних N масштабированных векторов Z, которые вычисляются алгоритмом. Переменная N является значением, которое вы задаете для числа спектральных средних значений. Если алгоритму не хватает векторов Z, алгоритм использует нули, чтобы заполнить пустые элементы.
Exponential
- алгоритм скользящего среднего, использующий экспоненциал взвешивания, обновляет веса и вычисляет скользящее среднее значение рекурсивно для каждого вектора Z, который поступает с помощью следующих рекурсивных уравнений:
.r- Коэффициент забывания.
- Весовой коэффициент, примененный к вектору текущей Z.
- Вектор Z тока.
- Скользящее среднее значение до предыдущего вектора Z.
- Эффект предыдущих векторов Z в среднем.
- Скользящее среднее значение с учетом вектора текущей Z.
Указания и ограничения по применению:
Поддерживает генерацию кода MEX, обрабатывая вызовы объекта как внешние. Не поддерживает генерацию кода для автономных приложений.
Смотрите Системные объекты в Генерации кода MATLAB (MATLAB Coder).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.