主要内容

以程序方式获取频谱分析仪块的测量数据

使用频谱分析仪模块计算和显示噪声正弦输入信号的功率谱。通过启用这些块配置属性,可以测量频谱中的峰值、光标位置、相邻信道功率比、失真和CCDF值:

  • PeakFinder

  • CursorMeasurements

  • ChannelMeasurements

  • DistortionMeasurements

  • CCDFMeasurements

打开并检查模型

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

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

属性访问Spectrum Analyzer块的配置属性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]

测量窗格中显示的值与数据.的各个字段数据以程序方式获得各种测量值。

比较高峰值

例如,比较峰值。验证得到的峰值数据。PeakFinder中的值进行匹配频谱分析仪窗口。

peakvalues = data.PeakFinder.Value frequcieskhz = data.PeakFinder.Frequency/1000
峰值= 26.9472 26.3470 -4.7973频率khz = 15.0015 1.0049 14.6569

保存并关闭模型

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

另请参阅

功能

对象