口袋实验室--使用AD2学习频谱参数测试

2024-05-01 10:28

本文主要是介绍口袋实验室--使用AD2学习频谱参数测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1. 简介

2. 频谱相关参数

2.1 频谱相关基本概念

2.1.1 采样时间间隔

2.1.2 采样频率

2.1.3 采样点数

2.1.4 采样时间长度

2.1.5 谱线数

2.1.6 奈奎斯特频率

2.1.7 频谱分辨率

2.1.8 最高分析频率

2.1.9 频谱泄露

2.2 窗函数

2.2.1 AD2的窗函数

2.2.2 测试矩形窗

2.2.3 测试平顶窗

2.3 频谱参数

2.3.1 幅值单位解释

2.3.2 几个常量解释

2.3.3 动态指标 

3. 其他相关知识

3.1 归一化

3.2 DFT 示例

4. 总结


1. 简介

通过AD2记录频谱相关知识。

2. 频谱相关参数

2.1 频谱相关基本概念

2.1.1 采样时间间隔

采样时间间隔,也称采样周期,一般使用 Ts 表示,Time sampling,是在数字信号处理中连续信号转换为离散信号时,连续信号的两次采样之间的时间差,用于说明多久采集一次信号的数据点。

截图中并未直接显示采样时间间隔,但可以通过采样频率500kHz换算,Ts=0.2ms。

2.1.2 采样频率

采样频率(fs)和采样时间间隔是描述数字信号采样过程的两个互为倒数的概念。尽管两者都能准确描述采样的属性,但在实际应用和理论讨论中,采样频率更为常用。

可能用采样频率更直观吧,而且还和奈奎斯特定理的关联,讨论采样频率而不是采样时间间隔,使得这一原则更易于理解和应用。

截图中直接显示了采样频率为500kHz。

2.1.3 采样点数

离散样本的总数。用N表示。

截图中显示的“8192 samples at 500kHz”中的“8192”就是采样点数。 

2.1.4 采样时间长度

采样时间长度,用T表示。

T=T_{s}\times N=\frac{N}{f_{s}}

2.1.5 谱线数

谱线数,在频谱图中出现的频率点数(不包含直流分量),用M表示。

M=\frac{N}{2}

2.1.6 奈奎斯特频率

由奈奎斯特采样定理(Nyquist Sampling Theorem)所确定,用fN表示。

f_{N}=2f_{max}

2.1.7 频谱分辨率

频谱分辨率,\Delta f,是指能够分辨两个相邻频率成分的最小频率间隔。

理论上,频谱分辨率由信号的采样时间长度决定,计算公式为:

\Delta f=\frac{1}{T}=\frac{f_{s}}{N}

T=1s,总采样时长1s, Δf=1Hz;

T=10s,总采样时长10s, Δf=0.1Hz;

2.1.8 最高分析频率

由奈奎斯特采样定理(Nyquist Sampling Theorem)所确定。用fmax表示。

2.1.9 频谱泄露

实际测量的信号是有限时长的,超出测量时长的信号就是未知的。当使用 FFT 算法(用于计算 DFT)对限时信号切片进行分析时,FFT 隐含地假设该信号在观察到的间隔后本质上会重复自身。这可能会导致每个切片边缘处的不连续性,从而导致每个测量时长的信号(Tn)中包含的能量溢出到其他测量时长的信号(Tm)频率谱中。这种现象称为频谱泄漏。

2.2 窗函数

窗函数用于在进行傅里叶变换之前修改信号,这些函数通过在信号的两端乘以特定的系数,即信号与窗函数相乘,以平滑 FFT 切片边缘的不连续性,从而减少边缘效应(频谱泄漏),改善频谱分析的结果。

2.2.1 AD2的窗函数

Digilent AD2提供以下窗函数:

  • Rectangular(矩形窗): 所有数据点都有相同的权重,主瓣非常窄(理论上具有最高的频谱分辨率)但旁瓣较高,会导致频谱泄漏。
  • Triangular(三角窗): 也称为Bartlett窗,中心点权重最大,向两端线性递减,旁瓣比矩形窗低,但主瓣更宽。
  • Hamming(汉明窗): 提供加权的余弦形状,旁瓣水平比矩形窗低,主瓣宽度适中,适合处理频率相近的信号。
  • Hann(ing)(汉宁窗): 类似汉明窗,但提供更平滑的加权,有助于进一步降低旁瓣水平。
  • Cosine(余弦窗): 使用余弦波形加权数据,某些应用中可以提供良好的频率分辨率。
  • Blackman-Harris(布莱克曼-哈里斯窗): 结合多个余弦项来减少旁瓣,最小化旁瓣水平时非常有效。
  • Flat Top(平顶窗): 设计用来保持信号的幅度精度,中心附近平坦,适用于频谱分析中的幅度校准
  • Kaiser(凯撒窗): 由James Kaiser在贝尔实验室开发,是一种参数化的窗函数,用于有限冲激响应滤波器设计和频谱分析。Kaiser窗通过调整参数α(或β=πα),在主瓣宽度和旁瓣水平之间进行权衡。

2.2.2 测试矩形窗

输入为50kHz正弦,Window=Rectangular,可以看到在频谱图中50kHz的谱宽非常窄。

2.2.3 测试平顶窗

输入为50kHz正弦,Window=Flat Top,可以看到在频谱图中50kHz的谱宽有所增加,但是幅度值和Rectangular接近,Flat Top窗对幅值精度有较好的保留。

2.3 频谱参数

2.3.1 幅值单位解释

  • 幅值的单位可以在图示位置设置
  • 部分单位需要同时设置Reference

Value

Unit

Description

1.0037 V

Peak (V)

Relative to 1V amplitude sine wave.

0.70973 Ṽ

RMS (Ṽ)

Relative to 1Ṽ (1.41V amplitude) sine wave.

0.3308 VHz

Ṽ/√Hz (VHz)

is RMS value / square root (RBW).

0.0322 dB

Peak (dB)

dB reference to peak value(sine wave).

-2.9781 dB

RMS (dB)

dB reference to RMS value.

-2.9781 dBṼ

dBṼ

dB reference to 1Ṽ sine wave, 20*Log10(Ṽ).

-0.7596 dBu

dBu

dB reference to 0.775Ṽ sine wave, 20*Log10(Ṽ/0.775).

10.03 dBm

dBm

dB reference to 0.224Ṽ sine wave, relative to 1mW on 50Ω load.

3.402 dBmHz

dBm/√Hz

dBm - 10*Log10(RBW/1Hz).

63.4 dBmMHz

dBm/√MHz

dBm - 10*Log10(RBW/1MHz).

-8.8685 dBO

dBOV

dB reference to full scale square wave, 20*Log10Ṽ/VFSSquare).

-11.8788 dBFS

dBFS

dB reference to full scale sine wave, 20*Log10(Ṽ/VFSSine).

2.3.2 几个常量解释

  • ENBW: Normalized equivalent noise bandwidth of window function,窗函数的归一化等效噪声带宽。该参数由窗函数决定。详细计算过程见:Equivalent noise bandwidth (ENBW) of window functions - GaussianWaves
  • Resolution: Resolution of bins, bin to bin distance. 
  • RBW: Resolution bandwidth is calculated from the transform resolution and window bandwidth. 
  • FS: Full scale is the input range, maximum magnitude of sine wave before clipping. 
  • DNR: Dynamic range is the ratio, in dB, of the largest to the smallest signals that can be detected.

2.3.3 动态指标 

  • NF: Noise floor is a root mean square (RMS) of all the bins except the peak signal and its harmonics. 
  • WoSpur: Worst spur level may or may not be a harmonic of the original signal; DC and bins on the descending slope are excluded. 
  • SFDR: Spurious free dynamic range is the ratio of the RMS value of the peak signal to the RMS value of the worst spurious signal. Expressed in dBc units, with respect to the actual signal amplitude. 
  • SFDRFS: Spurious free dynamic range, expressed in dBFS units, with respect to full-scale. 
  • SNR: Signal to noise ratio
  • SNRFS: Signal to noise ratio, expressed in dBFS units, with respect to full-scale. 
  • THD: Total Harmonic Distortion
  • SINAD: Signal to noise and distortion, S/(N + D)
  • ENOB: Effective number of bits.

3. 其他相关知识

3.1 归一化

3.2 DFT 示例

4. 总结

本文介绍了通过AD2记录频谱相关知识的过程,并深入探讨了频谱相关参数、窗函数以及频谱参数。频谱相关参数包括采样时间间隔、采样频率、采样点数等,而窗函数则在傅里叶变换前对信号进行修改,以改善频谱分析结果。频谱参数包括幅值单位解释、常量解释以及动态指标,这些参数对于正确理解频谱图和进行精确的频谱分析很有必要。

这篇关于口袋实验室--使用AD2学习频谱参数测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/951444

相关文章

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

LiteFlow轻量级工作流引擎使用示例详解

《LiteFlow轻量级工作流引擎使用示例详解》:本文主要介绍LiteFlow是一个灵活、简洁且轻量的工作流引擎,适合用于中小型项目和微服务架构中的流程编排,本文给大家介绍LiteFlow轻量级工... 目录1. LiteFlow 主要特点2. 工作流定义方式3. LiteFlow 流程示例4. LiteF

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma

MySQL 衍生表(Derived Tables)的使用

《MySQL衍生表(DerivedTables)的使用》本文主要介绍了MySQL衍生表(DerivedTables)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学... 目录一、衍生表简介1.1 衍生表基本用法1.2 自定义列名1.3 衍生表的局限在SQL的查询语句select

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

MySQL分区表的具体使用

《MySQL分区表的具体使用》MySQL分区表通过规则将数据分至不同物理存储,提升管理与查询效率,本文主要介绍了MySQL分区表的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、分区的类型1. Range partition(范围分区)2. List partition(列表分区)3. H