主要内容

getMeasurementsData

获取当前测量数据显示在频谱分析仪

描述

例子

数据= getMeasurementsData (范围)返回一个对当前频谱分析仪测量数据表在使用。

数据= getMeasurementsData (范围,'所有')返回一个数据表对所有频谱分析仪测量当前时间步。

例子

全部折叠

计算和显示的功率谱嘈杂的正弦输入信号使用dsp.SpectrumAnalyzer系统对象™。测量山峰,光标位置,相邻信道功率比,失真,在光谱和CCDF值启用以下属性:

  • PeakFinder

  • CursorMeasurements

  • ChannelMeasurements

  • DistortionMeasurements

  • CCDFMeasurements

初始化

输入正弦波有两个频率:1000 Hz, 5000 Hz。创建两个dsp.SineWave系统对象生成这两个频率。创建一个dsp.SpectrumAnalyzer系统对象来计算并显示功率谱。

Fs = 44100;Sineobject1 = dsp.SineWave (“SamplesPerFrame”,1024,“PhaseOffset”10“SampleRate”Fs,“频率”,1000);Sineobject2 = dsp.SineWave (“SamplesPerFrame”,1024,“SampleRate”Fs,“频率”,5000);SA = dsp.SpectrumAnalyzer (“SampleRate”Fs,“方法”,滤波器组的,“SpectrumType”,“权力”,“PlotAsTwoSidedSpectrum”假的,“ChannelNames”,{输入的功率谱},“YLimits”,40 [-120],“ShowLegend”,真正的);

使测量数据

获取测量数据,设置启用属性的测量真正的

SA.CursorMeasurements。使= true;SA.ChannelMeasurements。使= true;SA.PeakFinder。使= true;SA.DistortionMeasurements。使= true;

使用getMeasurementsData

流在嘈杂的正弦波输入信号和信号的功率谱估计使用频谱分析仪。测量光谱的特征。使用getMeasurementsData函数编程方式获得这些测量。的isNewDataReady函数表明当有新的光谱数据。测量的数据存储在变量中数据

数据= [];Iter = 1:1000 Sinewave1 = Sineobject1 ();Sinewave2 = Sineobject2 ();输入= Sinewave1 + Sinewave2;NoisyInput =输入+ 0.001 * randn (1024 1);SA (NoisyInput);如果SA。isNewDataReady data =[数据;getMeasurementsData (SA)];结束结束

图频谱分析仪包含一个坐标轴对象和其他对象类型的uiflowcontainer, uimenu uitoolbar。坐标轴对象包含14块类型的对象,线,文本。这个对象表示输入的功率谱。

右边的频谱分析仪测量窗格显示了启用。这些窗格中显示的值匹配值的最后时间步所示数据变量。您可以访问个人领域数据以编程方式获得各种测量。

比较高峰值

高峰值获得的PeakFinder财产。验证中获得高峰值的最后时间步数据匹配的值显示在频谱分析仪阴谋。

peakvalues = data.PeakFinder value(结束)
peakvalues =3×126.9850 24.1735 -52.3506
frequencieskHz = data.PeakFinder傅立叶/ 1000(结束)
frequencieskHz =3×14.9957 0.9905 7.8166

计算和显示一个嘈杂的正弦输入信号的功率谱使用频谱分析仪的块。测量山峰,光标位置,相邻信道功率比,失真,在光谱和CCDF值启用这些块配置属性:

  • PeakFinder

  • CursorMeasurements

  • ChannelMeasurements

  • DistortionMeasurements

  • CCDFMeasurements

打开并检查模型

过滤流噪声正弦输入信号用一个低通滤波器块。输入信号由两个正弦音调:1 kHz和15 kHz。噪声是高斯白噪声与零均值和方差为0.05。采样频率是44.1 kHz。打开模型和检查各种块设置。

模型=“spectrumanalyzer_measurements.slx”;open_system(模型)

访问配置属性的块使用频谱分析仪get_param函数。

sablock =“spectrumanalyzer_measurements /频谱分析仪”;cfg = get_param (sablock,“ScopeConfiguration”);

使测量数据

获取测量数据,设置启用属性的测量真正的

cfg.CursorMeasurements。使= true;cfg.ChannelMeasurements。使= true;cfg.PeakFinder。使= true;cfg.DistortionMeasurements。使= true;

模拟模型

运行模型。频谱分析仪的块比较原始的光谱与光谱过滤。

sim(模型)

右边的频谱分析仪测量窗格显示了启用。

使用getMeasurementsData

使用getMeasurementsData函数编程方式获得这些测量。

data = getMeasurementsData (cfg)
数据= 1 x5表SimulationTime PeakFinder CursorMeasurements ChannelMeasurements __________ DistortionMeasurements * * * _____________ ___________________ ______________________ {[0.9985]} 1 x1 struct 1 x1 struct 1 x1 struct 1 x1结构

测量值显示在窗格中显示的值相匹配数据。您可以访问个人领域数据以编程方式获得各种测量。

比较高峰值

作为一个例子,高峰值进行比较。验证获得的高峰值data.PeakFinder的匹配值频谱分析仪窗口。

peakvalues = data.PeakFinder。值frequencieskHz = data.PeakFinder.Frequency / 1000
peakvalues = 26.9113 26.4002 -5.0427 frequencieskHz = 15.0015 1.0049 - 13.1783

保存并关闭模式

save_system(模型);close_system(模型);

输入参数

全部折叠

频谱分析仪你想查询。指定一个dsp.SpectrumAnalyzer系统对象或SpectrumAnalyzerConfiguration对象一个频谱分析仪块。

输出参数

全部折叠

当你指定“所有”返回,一个测量数据表包含以下字段:

描述
SimulationTime 仿真时间
PeakFinder 峰仪数据
CursorMeasurements 光标测量数据
ChannelMeasurements 通道的测量数据
DistortionMeasurements 变形测量数据
CCDFMeasurements CCDF测量数据

当你没有指定“所有”,数据表只包含当前使用的频谱分析仪测量。

介绍了R2018b