历史上的今天
返回首页

历史上的今天

今天是:2024年12月31日(星期二)

正在发生

2019年12月31日 | 示波器+FFT,轻松驾驭频谱测量

2019-12-31 来源:elecfans

  当你看到标题时,可能会问,FFT有什么好讨论的,难道ZDS2022示波器的FFT功能会有什么本质上的不同吗?我们不妨简单地回顾一下FFT中几个重要的参数和关系表达式。


  采样率:示波器的采样频率,用Fs表示。ZDS2022示波器每通道均支持1GS/S采样率,下面将以最高采样率1GS/S为基准描述相关的问题;


  FFT点数:示波器用于FFT变换的样本数据个数,用N表示。ZDS2022示波器最大可以执行4M点的实时FFT运算。显然用400万个点做FFT,势必需要相当惊人的运算能力和运算效率;


  频率分辨率:用△f 表示示波器最小能分辨多小的频率。假设频率分辨率为10Hz,则可分辨10Hz、20Hz、30Hz……等10Hz整数倍的频率点,但不能分辨出15Hz、25Hz、37Hz等非整数倍的频率点。


  如果被测信号中存在15Hz这样的信号,显然经过FFT变换后,频谱上不能出现15Hz这个频率点,即无法分析出来。但该频点的能量将泄露到旁边相近的10Hz 和20Hz 频点上,不仅造成15Hz的信号分辨不出来,则连10Hz和20Hz频点的幅值也不准确,因为15Hz频点的能量泄露到这几个频点上去了。因此唯有进一步提高频率分辨率,比如,提高到5Hz或1Hz或更高(△f值更低越好)。当采样率一定时,则只能通过增加FFT点数才能提高频率分辨率,其前提是示波器要有足够的运算能力,且有足够的存储深度,即两者缺一不可。另一种办法是降低采样率,则势必导致无法分析高频信号,在某些情况下并不允许,而且除非是售价几十万和上百万的示波器,一般都无法手动调整示波器的采样频率。


  采样时间:在采样率Fs下,采集N个点所需要的时间,用T表示,显然T=N / Fs。注意该采样时间对应于FFT变换所用的N个点,而非整个示波器的捕获时间。而示波器捕获时间对应于整个存储深度,当做FFT变换时,并不一定需要使用全部的存储深度,因此两者不等价。

  ZDS2022示波器

  图 1 ZDS2022示波器

  事实上,上述FFT中的参数构成了一个重要关系式,将贯穿整个关于FFT的阐述之中。

  △f = Fs / N (1)

  即频率分辨率等于采样率除以FFT点数。将上述公式稍作变换:

  △f = Fs / N = 1 / (N / Fs) = 1 / T (2)

  即频率分辨率等于采样时间的倒数。实际上公式(1)和(2)是等价的,只是从不同的角度来说明问题而已。


  为什么示波器必须做到4兆点的实时FFT呢?常见的一些示波器,FFT最大只支持8K个点,甚至有些示波器只有1K个点。根据上面的关系表达式可以看出,在1GS/S采样率下,最高频率分辨率只有

  Fs/N=1GS/S / 8K点 = 125KHz

  也就意味着,如果被测信号不是125K的整数倍,则根本无法判断信号频谱。真实世界能有多少个被测信号正好是125KHz整数倍的呢? 因此这种示波器的FFT没有任何实用价值。这也是为什么在其它示波器的宣传资料中,几乎见不到关于FFT性能宣传的根本原因。


  由于致远电子对FFT做了大量的深度优化,使得ZDS2022示波器最大可以支持4M点FFT。根据上述的关系表达式,在1GS/S采样率下,FFT的频率分辨率达到了1GS/S / 4M点 = 250Hz。显然,在1GS/S采样率条件下示波器能够达到这样的频率分辨率,也就是说只要被测信号频率是250Hz的整数倍,ZDS2022仍能准确无误地分辨出来。即便被测信号不是250Hz的整数倍,此时存在频谱泄露,但在250Hz这么小的频率分辨率下,也能较准确地分析出被测信号的大致频点。


  假设被测信号中包含100KHz和150KHz两种频率分量,以及其它的一些更高频率的信号,对于普通示波器来说,由于最大只支持8K点FFT,即频率分辨率只有125KHz,显然无法分辨出100KHz和150KHz频点信号。为了证明这一点,我们不妨做一些测试。为了避免真实信号中本身的干扰影响到分析的准确性,则采用MATLAB构建一个纯正的信号来从数学原理上进行分析。假设设计一个信号:

  y = 0.7*sin(2*pi*100000*t) + 1.2*sin(2*pi*150000*t)

  这是一个包含100KHz和150KHz两种频率分量的信号,幅值分别为0.7和1.2,此信号详见下图:

  示波器+FFT,轻松驾驭频谱测量

图2 原始信号(包含100KHz和150KHz两种频率分量)


  下面分别以1GS/S采样率对该信号采样,计算8K点和4M点的FFT,此处直接给出结果,其相应的代码详见程序清单。

  示波器+FFT,轻松驾驭频谱测量

图3 程序清单Matlab代码


  按理说FFT可以直接分析出100KHz和150KHz频率信号,真的是这样?如下图所示为8K点FFT结果,为何没有看到100KHz和150KHz这两个信号呢?而屏幕上只有一个125KHz的信号,且幅值既不是0.7,也不是1.2,却是毫不相干的1.464。因为在8K点时,频率分辨率只有Fs/N=1GS/S / 8K = 125KHz,这无法分辨100KHz和150KHz频点同时由于频谱泄露,250KHz频点处都能看到幅值为0.2249,直流分量(0Hz)也有幅值0.2062,显然给出的信号并无这两个分量。那么8K点FFT给了用户正确结果吗?没有。不单是幅值不正确,就连那些最基本的频率分量都是错的,这样的FFT有何意义?

  示波器+FFT,轻松驾驭频谱测量

图4 8K点FFT结果


  下面再来看一下4M点FFT得出的结果将会是怎样,详见下图。由于4M点FFT时频率分辨率高达250Hz,因此可以准确无误地分辨出100KHz和150KHz频点信号,且无频谱泄露,100KHz信号幅值为0.7,150KHz信号幅值为1.2,准确无误地给了用户最真实的结果,4M点相对8K点的FFT优势在此一览无余。

  示波器+FFT,轻松驾驭频谱测量

图5 4M点FFT结果


  假设经常要分析电路中存在的噪声,如果示波器的频率分辨率不够细,则无论如何都无法准确定位噪声来源。如果采用ZDS2022示波器进行分析,由于ZDS2022示波器在4M点FFT、1GS/S采样率下频率分辨率仍能达到250Hz,则经过FFT后就能准确地发现20KHz的噪声。联想到所用的DC-DC开关频率正好是20KHz的,在这种测试场合下,ZDS2022示波器能够迅速定位噪声来源。


  综上所述,其实解决用户的麻烦就是创新的机会,当在200MHz带宽示波器上实现了4M点的FFT运算时,在1GS/s采样率下FFT的频率分辨率仍达到了250Hz水平,示波器就一定能真正地成为信号分析的利器。因此对于工程师来说,千万不能小看个人的力量,只要给我们一个支点就一定有可能撬动地球。致远电子技术创新的故事告诉我们,只要注重细节用心做事,世界一定会因为我们而不同。

推荐阅读

史海拾趣

EFINIX公司的发展小趣事

EFINIX公司继续深化其在FPGA领域的技术创新,成功推出了Trion FPGA产品系列。该产品具有低功耗、精细封装面积和强大的性能特点,深受市场欢迎。在Trion FPGA产品销售的头三个月里,EFINIX公司获得了多项设计认可和客户订单,并有很多客户已经开始使用Trion FPGA进行产品设计。

AC Photonics Inc公司的发展小趣事

AC Photonics Inc公司自成立以来,一直致力于光电技术的研发与应用。在公司成立初期,研发团队在光子集成技术上取得了重大突破,成功开发出一种高效、稳定的光电转换器。这一技术的问世,不仅提升了数据传输的速度和稳定性,还大大降低了能耗,为公司的业务发展奠定了坚实的基础。随着这一技术的逐步推广和应用,AC Photonics Inc在电子行业中逐渐崭露头角。

Alutronic Kuhlkorper Gmbh & Co Kg公司的发展小趣事

AC Photonics Inc非常重视人才培养和团队建设。公司建立了完善的人才培养和激励机制,吸引了一大批优秀的研发人才和管理人才加入。同时,公司还注重团队建设,通过定期举办团队活动、开展员工培训等方式,增强团队凝聚力和向心力。这些措施为公司的持续创新和发展提供了有力的人才保障。

DB Lectro Inc公司的发展小趣事

DB Lectro Inc公司自创立之初,就致力于气体检测技术的研发与创新。在公司总部的加利福尼亚州研发中心,一群充满激情的工程师们夜以继日地工作,成功研发出了首款高精度、高稳定性的气体检测仪器。这款产品凭借其卓越的性能和精准的检测结果,迅速在污水处理、化工等领域打开了市场。随着技术的不断进步和产品的不断升级,DB Lectro Inc逐渐在气体检测领域树立了领先地位。

Acopian Power Supplies公司的发展小趣事

为了满足亚洲市场的需求,DB Lectro Inc决定在中国上海设立子公司及工厂。这一战略举措不仅使公司能够更贴近亚洲客户,还大大降低了生产成本。在上海工厂的建设过程中,公司充分考虑到环保和可持续性发展的要求,采用了先进的生产工艺和设备。随着工厂的投产和产能的不断提升,DB Lectro Inc的产品在亚洲市场的占有率也稳步上升。

Atlantic Microwave Ltd公司的发展小趣事

随着电子行业的快速发展,Atlantic Microwave Ltd公司意识到,只有不断创新才能在激烈的市场竞争中立于不败之地。公司投入大量研发资金,吸引了一批优秀的科研人才,专注于微波技术的研发与创新。经过数年的努力,公司成功推出了一款具有颠覆性的微波产品,凭借其卓越的性能和稳定性,迅速获得了市场的认可,为公司带来了可观的收益。

问答坊 | AI 解惑

谁有点阵生成软件

我现在找了很久没找到一个点阵生成软件,我现在急需它,如果谁有能帮帮我吗?发我邮箱  lijianhuijgsdx@163.com   QQ535233725.非常感谢!!!!!!…

查看全部问答>

DSP的C语言心得记录-利用CCS分析DSP的时钟运行周期

分别用C语言和汇编语言进行程序设计,计算正弦函数值,并比较代码效率。 1)C语言编程 #include #define NX 180 //最大正弦角度 #define pi 3.14159 short i; double x[NX] //定义输入正弦角度数组(弧度值) double r[NX] //定义输出 ...…

查看全部问答>

ARM的中断处理和SWI参数问题

我现在知道的在ARM里软件中断(SWI call)是用来将模式转换成超级用户模式的(SVC mode) 然后用这两句话可以将SWI的参数储存在R0里面 LDR R0,[LR,#-4] BIC R0,R0, #0xFF000000 因为刚刚学习ARM, 现在我不理解的是这个SWI的参数到底可以用来干什么 ...…

查看全部问答>

求助:VS.NET 2008下WINCE模拟器 需要带网络连接功能

VS.NET 2008不像03提供了WINCE模拟器 求助 刚折腾了一个版本 不带网络功能 即希望在模拟器上可以配置IP PING通 这样可以测试一些访问MSSQL的程序 谢谢 不知道表达清楚了没有……汗…

查看全部问答>

流小驱动SRB.NumberOfPhysicalPages时钟为0

修改DDK中testcap 做的摄像头驱动,想使用DMA得到数据。DDK文档中说SRB的ScatterGatherBuffer就是作为DMA使用的,NumberOfPhysicalPages是其中的元素个数。但是我在生成图像的ImageSynth函数中得到的NumberOfPhysicalPages却始终为0.    ...…

查看全部问答>

NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0?

NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0?…

查看全部问答>

求助:WINCE触摸屏校准问题?

利用控制面板中的“校准”,校准后总是不能正常退出。串口打印提示 : M 474,507  507,520  33,13M 2061,1655  2099,1655  38,0Maximum Allowed Error 7: Maximum error 13325 exceeds calibration th ...…

查看全部问答>

如果采用USB<->1394 进行WinDbg调试

目标机是6芯的1394接口,本本只有USB接口,不知该如何设置WinDbg,有知道的DX请告知,谢谢。…

查看全部问答>

智能手机影响汽车信息娱乐

本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 苹果公司的iPhone把智能手机从专注于通讯的设备变成了以应用为中心的多用途移动平台,可以用于许多产业之中。据iSuppli公司,其它智能手机平台迅速跟进,纷纷增加了多点触控用户界面、应用开发 ...…

查看全部问答>

求助:zigbee两个测温节点总有一个为0

我设计的无限温度传感网络由一个路由设备和两个温度测量节点组成。两个测温节点的程序应该是一样的吧?我是通过长地址(IEEE地址)来在路由设备上区分两个节点的数据的,部分原代码如下:unsigned int current_temperature1 = 0;unsigned int curre ...…

查看全部问答>