主要内容

为频谱分析仪块编程获取测量数据

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

  • PeakFinder

  • CursorMeasurements

  • ChannelMeasurements

  • DistortionMeasurements

  • CCDFMeasurements

打开并检查模型

使用低通滤波器块对流噪声正弦输入信号进行滤波。输入信号由两个正弦音调组成:1khz和15khz。噪声为白高斯噪声,均值为零,方差为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结构

测量窗格中显示的值与中显示的值相匹配数据.的各个字段数据以编程方式获取各种度量值。

比较高峰值

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

peakvalues = data.PeakFinder.Value frequencieskHz = data.PeakFinder.Frequency/1000
peakvalues = 26.9068 26.3821 -3.5026 frequcieskhz = 15.0015 1.0049 13.3075

保存并关闭模型

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

另请参阅

功能

对象

Baidu
map