工程师。光谱分析仪
创建频谱分析仪对象。
库::`工程师`
资料描述
一个对象 EngeeDSP。光谱分析仪 显示时域信号的频谱。
频谱分析仪以频谱或频谱图的形式表示频谱。
对象使用滤波器组方法和经平均修改的韦尔奇周期图的方法执行频谱计算。 有关详细信息,请参阅算法。
频谱分析仪可以W、dBm和dBW三个单位显示信号功率谱。 有关这三个单元之间的功率转换的详细信息,请参阅将功率从一个测量单位转移到另一个测量单位。
要创建频谱分析仪对象,请执行以下步骤:
-
创建*EngeeDSP。spectrumAnalyzer*对象并设置其属性。
-
用参数调用对象,就好像它是一个函数一样。
若要了解有关如何使用系统对象的详细信息,请参阅 AnyMath系统对象.
语法
例子:
一种单面功率谱的频谱分析仪
Details
创建*EngeeDSP。spectrumAnalyzer*对象并设置其属性。
import EngeeDSP:spectrumAnalyzer
Fs = 100e6
scope = spectrumAnalyzer(SampleRate=Fs,AveragingMethod="exponential",PlotAsTwoSidedSpectrum=false,RBWSource="auto",SpectrumUnits="dBW")
spectrumAnalyzer(
SpectrumType = "power"
ViewType = "spectrum"
Method = "filter-bank"
SpectrumUnits = "dBW"
ReferenceLoad = 1
FullScaleSource = "auto"
FullScale = 1
OverlapPercent = 0
FrequencyResolutionMethod = "rbw"
WindowLength = 1024
RBWSource = "auto"
RBW = 9.76
FFTLengthSource = "auto"
FFTLength = 1024
SampleRate = 1.0e8
Window = "Hann"
SidelobeAttenuation = 60
FrequencyOffset = 0
FrequencySpan = "full"
Span = 10000.0
CenterFrequency = 0
StartFrequency = -5000.0
StopFrequency = 5000.0
PlotAsTwoSidedSpectrum = false
AveragingMethod = "exponential"
ForgettingFactor = 0.9
VBWSource = "auto"
VBW = 10
SpectrogramChannel = 1
TimeResolutionSource = "auto"
TimeResolution = 0.001
TimeSpanSource = "auto"
TimeSpan = 0.1
Size = (800, 500)
Title = ""
YLabel = ""
YLimits = "auto"
AxesLayout = "vertical"
ShowColorbar = true
ShowGrid = true
Colormap = "jet"
ShowLegend = false
ColorLimits = "auto"
LineWidth = 1.5
LineStyle = "-"
FrequencyScale = "linear"
ChannelNames = String[]
)
让我们从具有不同振幅和频率的固定真实正弦曲线的总和中绘制一个单侧功率谱。
fSz = 5000
t = (0:fSz-1)/Fs
sin1 = sin.(2π * 5e6 * t)
sin2 = 1e-1 * sin.(2π * 15e6 * t)
sin3 = 1e-2 * sin.(2π * 25e6 * t)
sin4 = 1e-3 * sin.(2π * 35e6 * t)
sin5 = 1e-4 * sin.(2π * 45e6 * t)
for idx in 1:250
y_total = sin1 + sin2 + sin3 + sin4 + sin5 + 0.0001 * randn(fSz)
scope(y_total)
end
scope |> display
release!(scope)

此外
将功率从一个测量单位转移到另一个测量单位
Details
频谱分析仪提供三个测量频谱功率密度的单元:W/Hz、dBm/Hz和dBW/Hz。 相应的功率测量单位为W、dBm和dBW。 在电气应用中,您还可以查看信号的均方根值,单位为V(均方根值)、DBMQ或dBV。 默认频谱类型是以dBm为单位的功率。
将功率从瓦特转移到dBW和dBm
DBW中的功率由公式确定:
以dBm为单位的功率由公式确定:
对于幅度为 1 单侧频谱的功率(以瓦特为单位)由公式确定:
使用公式计算dBm中的相应功率:
对于白噪声信号,所有频率的频谱都是平坦的。
考虑具有方差的白噪声信号 1e-4.
因此,每单位带宽的功率( )等于 1e-4.
对于范围内的单向频谱 以瓦特为单位的总白噪声功率由公式确定:
哪里
-
—这是输入信号的采样率;
-
是总带宽与带宽分辨率之比( ).
对于单向频谱,总带宽是采样频率的一半。
考虑采样率 44100 Hz和带宽分辨率 21.53 赫兹。
在这些值下,以瓦特为单位的总白噪声功率为 0.1024 星期二。
可以使用公式计算以dBm为单位的白噪声功率:
将功率从瓦特转换为满量程dB
如果将光谱单位设置为 dBFS 而满量程([属性:全资源])到模式 "汽车",然后功率在 dBFS 它将计算如下:
哪里
-
-功率(瓦特); *用于双精度和浮点信号 -这是输入信号的最大值; *对于定点或整数信号 —这是可以表示的最大值。
如果设置满量程([属性:全资源])到模式 "财产",然后功率在 dBFS 它将计算如下:
哪里 -物业价值 [属性:全尺度].
对于幅度为 1 以瓦特为单位的单向频谱的功率由公式确定:
使用公式计算满量程dB的相应功率:
将功率从dBm转换为RMS值
以dBm为单位的功率由公式确定:
电压(RMS值)使用公式计算:
在前面的例子中 等于 26.9897 dBm。
意义 计算为:
算法
频谱计算-滤波器组
Details
如果 [属性:方法] 设置值 "过滤银行" 然后频谱分析仪将使用滤波器组来计算功率谱。
滤波器组分离宽带输入信号 与采样率 对于多个窄带信号 与采样率 .
变量 表示滤波器组中的频带数。
在频谱分析仪 等于达到指定分辨率带值(RBW)所需的数据点的数量或 1024,取决于哪个值更大。
频谱分析仪将宽带输入信号分成几个窄频带后,使用以下公式计算每个窄频带中的功率:
每个值在哪里 它是在窄频带功率的计算,并 -窄带信号的长度 为 .
在所有窄频带的功率值(表示为 )形成向量 :
频谱分析仪平均电流矢量 与先前的向量 使用滑动平均方法之一:过视频带或指数加权。 平均运算的结果形成用于计算频谱的矢量。 有关平均方法的详细信息,请参阅平均方法。
频谱分析仪使用RBW值(Hz)或频带数来确定输入帧的长度。
如果指定 [Property:FrequencyResolutionMethod]="rbw",并为 [属性:RBWSource] 值设置:
-
"汽车"-频谱分析仪确定适当的分辨率波段,以确保存在1024给定频率范围内的带宽分辨率间隔。 在这种情况下,频谱分析仪使用公式计算RBW: -
"财产"-频谱分析仪计算样本数目 使用公式:哪里
如果指定 [Property:FrequencyResolutionMethod]="num-frequency-bands",那么得到的分辨率带宽将是:
频谱计算-韦尔奇方法
Details
如果 [属性:方法] 设置值 "韦尔奇",那么功率谱的计算是平均修改的周期图。
频谱分析仪的算法包括以下步骤:
-
将输入数据缓冲到由 分。 每个数据段分为 重叠的数据段,每个数据段的长度为 ,重叠在 分。 数据段可以表示如下:
*如果 ,则重叠为
50%. *如果 ,则重叠为0%. -
将一个窗口应用于 时域中的重叠数据段。
如果作为解决方法
[属性:频率解析]选择的值"窗口长度",然后可以指定数据窗口的长度 使用物业[属性:WindowLength].如果作为解决方法
[属性:频率解析]选择的值"rbw",然后该算法使用以下等式确定数据窗口的长度: .然后,它将输入信号拆分为使用窗口处理的几个数据段。
大多数窗口函数对段中心的数据的影响大于对边缘的数据的影响,从而导致信息丢失。 为了减少这种损失,单个数据段通常在时间上重叠。 对于使用窗口处理的每个段,通过计算离散傅立叶变换来计算周期图。 然后计算结果的模数的平方并除以 :
哪里
是窗函数中功率的归一化因子,定义为:可以在属性中设置窗口
[属性:窗口]. -
频谱分析仪使用改进的周期图计算方法计算和绘制功率谱、功率谱密度和均方根值。
为了确定Welch方法的功率谱的计算,频谱分析仪对后者的周期图的结果进行平均
数据段。 与原始方差相比,平均减少了方差 -数据的点段。 有关平均方法的详细信息,请参阅平均方法。
*频谱分析仪计算频谱功率密度使用:
+
*功率谱是光谱功率密度和分辨率带的乘积:
+
*频谱分析仪在模式下以频谱图的形式显示功率 "频谱图".
频谱图的每一行代表一个周期图。
每行的时间分辨率为
频谱分析仪使用一定数量的样本来计算频谱。
该值与分辨率波段直接相关(
或与窗口的长度(
哪里
-
-重叠百分比,有关详细信息,请参阅[重叠百分比]; -
-归一化有效噪声带宽,有关更多信息,请参阅归一化有效噪声带宽(NENBW); -
-输入信号的采样率; -
-分辨率波段,有关详细信息,请参阅分辨率波段(RBW)。
如果作为解决方法 [属性:频率解析] 选择的值 "rbw",则窗口长度由公式确定:
如果作为解决方法 [属性:频率解析] 选择的值 "窗口长度" 该算法使用属性中指定的窗口长度值 [属性:WindowLength].
归一化有效噪声带宽(NENBW)
Details
归一化有效噪声带宽,
哪里
最低值 1.
所有其他窗口更重要 1.5.
分辨率波段(RBW)
Details
分辨率波段
可以使用属性设置分辨率带 [属性:RBW] 以赫兹为单位。
如果指定 [Property:FrequencyResolutionMethod]="rbw",并为 [属性:RBWSource] 值设置:
-
"汽车"-频谱分析仪确定适当的分辨率波段,以确保存在1024给定频率范围内的带宽分辨率间隔。 在这种情况下,频谱分析仪使用公式计算RBW: -
"财产"-频谱分析仪计算样本数目 使用公式:哪里
如果指定 [Property:FrequencyResolutionMethod]="num-frequency-bands",那么得到的分辨率带宽将是:
奈奎斯特频率范围
Details
在构造双向频谱时,当 [属性:PlotAsTwoSidedSpectrum]=true,奈奎斯特频率范围为
何时 [属性:PlotAsTwoSidedSpectrum]=false 奈奎斯特频率范围
平均方法
Details
频谱分析仪使用以下方法之一计算移动平均线:
*视频频段-频谱分析仪在时域中使用低通滤波器来平滑信号中的噪声。 视频波段滤波器(
+ 视频频带是低通滤波器的带宽,频谱分析仪用于在显示信号之前对信号中的噪声进行平均或平滑。 频谱分析仪使用以下公式计算视频频带:
+
+ 哪里
+
**
+
**
+
**
+
视频频带不影响噪声水平(噪声阈值),而只是增加信噪比并平滑噪声曲线。 减小值时
+ 视频频带滤波器的截止频率由公式确定:
+
+ 哪里
+
**
+
**
+
*指数-移动平均算法使用指数加权来更新权重,并递归地计算每个传入向量的移动平均。
+
+ 哪里
+
**
+
**
+
**
+
**
+
**
+
**