引 言
在运动目标速度测量中,常利用频谱分析的方法获取目标的多普勒频率,并依据多普勒测速原理来完成动目标速度测量。为达到高精度测速的要求,需进一步提高频率分辨率,在实际频谱分析中,要对获取的试验数据先进行分段处理,在此基础上再进行细化操作,这样可获得比常规fft分析更高的频率分辨率。近年来,频谱细化技术发展迅速,常见的方法有:hr-fa法,基于多相滤波器的zfft法,基于复调制的zoom-fft法,自适应zoom-fft法,chirp-z变换和小波基法等。然而,这些频谱细化技术普遍存在运算量大,不易实现编程的缺点。为此,提出了一种数字变频fft的频谱细化算法,并利用图形化编程语言labview进行了编程设计。
1数字变频fft的数学原理
在频谱分析中,频率分辨率表示频谱中能够分辨的两个频率分量的最小间隔,用频率间隔△f表示为:
要提高fft的频率分辨率,可通过以下两种途径实现:
(1)降低采样频率fs。这会使频率分析范围缩小,其降低的幅度受到采样定律的限制。
(2)需要增加分析的采样点数n。这意味着计算机的存储量和计算量大大增加,由于实际系统软、硬件方面的限制,这样做并不总是可能的。
可以看出以上两种方法提高频率分辨率的能力有限且灵活性差。所用的数字变频fft主要指采用移频特性进行频谱细化的技术,其原理框图如图1所示。
设模拟信号为x(t),经a/d转换后得到采样时间序列x(n)(n=0,1,…,n-1),设fs为采样频率;f1~f3为细化分析频带;f0为需要细化的频带中心频率;d为细化倍数;n为fft分析的点数,算法如下:
(1)复调制移频
所谓复调制移频就是将频域坐标向左移或向右移,使得被观察的起点为频域坐标的零频位置。这里对离散信号x(n)用exp[-2πf0/fs]进行复调制,把需要细化的频带起点移至频率轴原点,得到:
(2)数字低通滤波
为保证重新采样后不发生频谱混叠,必须进行抗混叠滤波,以滤出所需分析频段信号。设频率细化倍数为d,则低通滤波器的截止频率fc=fs/2d。
(3)重新采样
信号被移频和低通滤波后,分析信号频带变窄,因而可以以较低的采样频率fs=fs/d进行重采样,fs比原采样频率降低了d倍,即对原采样点每隔n点再抽样一次。
(4)反移频处理
实行反移频操作就是将频率中心重新移到需要细化的频带起始频率,使得移频前后的频率保持一致。
(5)fft运算
对反移频后的信号进行fft处理,得到细化后的频谱,其频率分辨率提高了d倍。
2数字变频fft的labview实现
2.1虚拟仪器labvew
labview是美国ni公司推出的虚拟仪器开发平台软件,是一种非常优秀的面向对象的图形化编程语言,用于快速创建测试、测量和控制应用程序。它的优点是数据处理速度快,硬件支持等方面功能强大;缺点是在数值处理、分析和算法工具等方面的效率不高。而mathworks公司开发的matlab提供了强大的矩阵运算和图形处理功能,编程效率高,特别擅长数值分析和处理,但其界面开发能力较差,不能进行实时操作和控制。
鉴于labview和matlab两种语言的优点,在虚拟仪器开发过程中,除利用labview直接编程外,还可结合matlab进行混合编程。通常用labview设计用户图形界面,负责数据采集和网络通信;matlab在后台提供大型算法供labview调用。
2.2 labview直接编程实现数字变频fft
在labview直接编程中,通过调用ramp pattern.vi节点和exponential.vi节点完成信号的复调制和反移频操作;通过调用decimate.vi节点对复调制后的信号进行滤波,压缩频带,然后进行整数倍抽取。其中,对信号进行数字低通滤波的滤波器为切比雪夫i型滤波器,其主要参数:阶数为8阶,截止频率为0.8·(fs/2)/d;通过调用fft.vi和array size.vi节点完成fft运算,辅以其他相应的计算处理节点,根据数字变频的原理图最终实现数字变频fft,其程序框图如图2所示。
2.3 labview与matlab混合编程实现数字变频fft
labview与matlab的混合编程,可通过调用labview中的matlab script节点实现。其中,matlabscript节点本身具有多输入、多输出的特点,一次处理的信息量可以很大。在matlab中,根据数字变频fft的数学原理,编程实现复调制移频、低通滤波、重采样、反移频和fft操作处理,经调试无误后,导入到matlab script节点中;然后在labview中,通过调用sinewave.vi产生仿真信号,或从文件中读取信号数据,同时添加采样频率,细化倍数等控制节点;最后连接各图标,实现数字变频fft,其程序框图如图3所示。
3仿真分析
利用labview编程实现数字变频fft软件处理平台,调用functions\analyze\signal processing\signal generation子模板中的sine wave.vi创建正弦信号发生器,构造仿真信号:
x(t)=sin(2πf1t)+2sin(2πf2t)+5sin(2πf3t)
式中:f1=2 002 hz;f2=2 004 hz;f3=2 006 hz;采样点数n=5 120;采样频率为51 200 hz。根据式(1) 可知,此时频率分辨率为10 hz,在频域内分辨不出这3个信号。
若要把分辨率提到1 hz,即细化10倍,就要采样51 200个点,然后把分析频带(2 000~2 010 hz)的起始频率f=2 000 hz点移到原点,当细化倍数d=10时,即51 200个采样点每隔10个点进行抽取,完成对复调制移频、滤波后的信号重采样。新的采样频率即为5 120 hz,降低了10倍,抽取得到5 120个点。为了使细化后的频率与细化前的一致,在作fft前应该实行反移频,这样就可以得到分析频带上的细化频谱。如果采用labview直接编程处理,其细化频谱如图4所示;如果采用labview和matlab混合编程处理,其细化频谱如图5所示。
从图4和图5中可以看出,基于labview的两种编程方法都实现了频谱细化的功能,2 002 hz,2 004 hz和2 006 hz三个频率点对应的幅值谱清晰可见,且幅值相差2.5倍,分辨率为1 hz。
4结语
数字变频fft是频谱分析中一种约束条件少,可操作性强的方法。在此借助功能强大的labview软件编程处理方法,使得数字变频实现简便,能够满足提高频率分辨率的要求,并具有很高的实时性。
显然,在动目标速度测量中,利用数字变频fft进行频谱细化处理,可获得更高的频率测量精度。根据多普勒原理,也可获得更高的测速精度。因此,研究中基于labview的数字变频fft频谱细化方法在工程实践中有着重要的应用价值,可广泛应用于汽车、飞机等运动目标的速度测量中。
直流减速电机使用说明
基于PIC32单片机的经典设计汇总
带PWM的RGB LED色彩效果的制作
国家自然科学基金重磅项目:我国光纤传感技术发展路线图
2015 IOT大会听大咖们讲述关于车联网的故事
通过利用编程语言LabVIEW实现数字变频FFT的频谱细化算法设计
电池技术相互结合进取才是必要的进步!
松下ALPHA阿尔法洗衣机跨界高端设计 带领用户走进智能化洗衣时代
润开鸿受邀授课2023年南京市高技能人才研修班之“鸿蒙应用与数智互联”
ANSYS宣布14纳米FinFET制程技术获联电认证
74ls175是什么(74ls175引脚图及功能_内部结构原理图及应用电路)
寻找医疗领域的下一个蓝海市场,医疗无人机将迎来爆发式增长
荣耀、小米、联想“吓人的技术”大争论
Renesas GUI挑战赛—基于智能家居系统的创建
哈佛结构和冯诺依曼结构的区别
马云无人超市最新消息汇总:杭州无人超市火爆夏天,马云却说暂时不面向社会这不是打脸吗?
美方称60国弃用中国5G 中方回应
N沟道结型场效应管的工作原理
基于51单片机的超声波智能热水器设计
全球半导体出货量2年后或破1兆 数字如此惊人