getMeasurementsData

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

描述

数据= getMeasurementsData (范围返回有关当前使用的频谱分析仪的测量的数据表。

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

例子

全部收缩

计算和使用该显示有噪声的正弦输入信号的功率谱dsp.SpectrumAnalyzer系统对象。通过使以下性质测量中的峰值,光标展示位置,相邻信道功率比,失真和CCDF值在光谱:

  • PeakFinder

  • CursorMeasurements

  • ChannelMeasurements

  • DistortionMeasurements

  • CCDFMeasurements

初始化

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

FS = 44100;Sineobject1 = dsp.SineWave('SamplesPerFrame',1024,'PhaseOffset'10,...'采样率',FS,“频率”,1000);Sineobject2 = dsp.SineWave('SamplesPerFrame',1024,...'采样率',FS,“频率”,5000);SA = dsp.SpectrumAnalyzer('采样率',FS,'方法'“滤波器组”...'SpectrumType''功率'“PlotAsTwoSidedSpectrum”假的,...“ChannelNames”,{“输入功率谱”},'YLimits',[ -  120 40],'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;噪声输入=输入+ 0.001*randn(1024,1);SA (NoisyInput);如果SA.isNewDataReady数据= [数据; getMeasurementsData(SA)];结束结束

的频谱分析仪显示的右侧的使能测量窗格。在这些窗格中示出的值与的最后时间步示出的值相匹配数据变量。您可以访问的各个领域数据以编程方式获取各种测量值。

比较峰值

峰值由所获得的PeakFinder属性。验证在最后时间步长获得的峰值数据匹配在频谱分析仪曲线图中所示的值。

peakvalues = data.PeakFinder value(结束)
peakvalues =3×126.9848 24.1734 -52.0597
frequencieskHz = data.PeakFinder(结束)。频率/ 1000
frequencieskHz =3×14.9957 0.9905 3.1869

计算并显示使用频谱分析仪块嘈杂的正弦输入信号的功率谱。通过使这些块的配置属性测量峰,光标展示位置,相邻信道功率比,失真和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.Enable = TRUE;cfg.ChannelMeasurements.Enable = TRUE;cfg.PeakFinder.Enable = TRUE;cfg.DistortionMeasurements.Enable = 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 struct]

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

比较峰值

例如,比较峰值。验证所得到的峰值data.PeakFinder匹配在看到的值频谱分析仪窗口。

peakvalues = data.PeakFinder。值frequency encieskhz = data. peak - finder . frequency /1000
峰值值= 26.9050 26.3628 -3.6545 frequency encieskhz = 15.0015 1.0049 11.1686

保存并关闭模型

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

输入参数

全部收缩

你要查询的频谱分析仪。指定一个dsp.SpectrumAnalyzer系统对象或频谱分析仪配置对象,用于频谱分析仪块。

输出参数

全部收缩

当您指定'所有',返回一个包含以下字段的度量表:

领域 描述
SimulationTime 仿真时间
PeakFinder 山顶取景器数据
CursorMeasurements 光标测量数据
ChannelMeasurements 通道的测量数据
DistortionMeasurements 失真测量数据
CCDFMeasurements CCDF测量数据

当你不指定'所有'中,数据表包含当前在仅使用频谱分析仪测量。

介绍了在R2018b