基于LabVIEW的虚拟频谱仪的设计与实现毕业论文.docx
- 文档编号:11502278
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:13
- 大小:25.91KB
基于LabVIEW的虚拟频谱仪的设计与实现毕业论文.docx
《基于LabVIEW的虚拟频谱仪的设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的虚拟频谱仪的设计与实现毕业论文.docx(13页珍藏版)》请在冰点文库上搜索。
基于LabVIEW的虚拟频谱仪的设计与实现毕业论文
《基于LabVIEW的虚拟频谱仪的设计与实现毕业论文》
摘要:
目基于LabVIEW的虚拟频谱仪的设计与实现指导老师职称学生姓名学号专业班级院(系)完成时间基于LabVIEW的虚拟频谱仪的设计与实现摘要LabVIEW是一种有效的运用虚拟仪器设计技术来进行虚拟仪器开发的计算机应用软件,本设计是在计算机的平台上,把虚拟仪器技术、信号与系统分析和LabVIEW软件等相结合而设计出的虚拟频谱仪,其主要目的是对信号进行频谱分析,很多周期函数信号都可以展开成正交函数来线性组合成无穷级数,如正交函数集是三角函数集或者指数函数集,则可把它展开成为傅立叶级数,一般表达式为:
(3-3)直流分量幅值为:
(3-4)各余弦分量幅值为:
(3-5)各正弦分量幅值为:
(3-6)周期信号的三角函数展开式的另一种形式为:
(3-7)直流分量幅值为:
(3-8)各频率分量幅值为:
(3-9)各频率分量的相位为(3-10)式中,T—周期,,(3-11)(3-12)其中:
本科毕业论文(设计)题目基于LabVIEW的虚拟频谱仪的设计与实现指导老师职称学生姓名学号专业班级院(系)完成时间基于LabVIEW的虚拟频谱仪的设计与实现摘要LabVIEW是一种有效的运用虚拟仪器设计技术来进行虚拟仪器开发的计算机应用软件,本设计是在计算机的平台上,把虚拟仪器技术、信号与系统分析和LabVIEW软件等相结合而设计出的虚拟频谱仪,其主要目的是对信号进行频谱分析。
用LabVIEW软件自身产生的仿真信号模块发出信号,并通过LabVIEW软件内的其他模块来实现信号的采集、滤波、傅里叶变换和频谱分析。
利用LabVIEW软件来设计虚拟仪器,可以利用其图形化的编程语言,灵活的编程思维,设计出不同功能的虚拟仪器。
在工业生产中,虚拟仪器的应用为信号和数据的测量及控制提供了方便,它可以代替一些传统的测量仪器来实现对信号的分析与处理功能,在这种情况下,对节约成本、提高资源效率要求极高的社会来说,虚拟仪器的发展为人们带来了很大社会效益。
关键词:
LabVIEW;虚拟仪器;信号生成;信号采集;信号分析ThedesignandimplementationofVirtualSpectrumInstrumentBasedonLABVIEWABSTRACTLabVIEWisakindofeffectiveusingvirtualinstrumentdesigntechnologyforvirtualinstrumentdevelopedofcomputerapplicationsoftware,thisdesignisintheplatformofcomputer,combiningwithvirtualinstrumenttechnology,signalandsystemanalysisandtheLabVIEWsoftwaretodesignavirtualfrequencyspectruminstrument,itsmainpurposeisthespectrumanalysisforthesignal.UsingtheLabVIEWapplicationsoftwaremodulesendsasignaltotheothermodules,andthroughtheLabVIEWsoftwareachievethesignalacquisition,filtering,Fouriertransformandspectrumanalysis.UsingLabVIEWsoftwaretodesignthevirtualinstrument,youcanalsousethegraphicalprogramminglanguage,theflexibleprogramthinking,todesignthedifferentfunctionofvirtualinstrument.Inindustrialproduction,theapplicationofvirtualinstrumentforthesignalandthedataofmeasurementandcontrolprovideaconvenient,itcanreplacesometraditionalmeasuringinstrumentstoachievethefunctionofsignalanalysisandprocessing,inthiscase,savingthecostsandimprovingtheefficiencyofresourcerequirementtothesociety,thedevelopmentofthevirtualinstrumentforthepeopleareallbringgreatsocialbenefittopeople.KEYWORDSLabVIEW;VirtualInstrument;signalgenerated;signalanalysis目录摘要IIABSTRACTIII1绪论III1.1研究背景11.2虚拟仪器的特点及发展11.3本设计的结构22虚拟仪器及LabVIEW软件介绍42.1虚拟仪器的简介42.2虚拟仪器的构成52.3LabVIEW简介53虚拟频谱仪的功能介绍83.1虚拟频谱仪的工作原理83.2虚拟频谱仪的设计84基于LabVIEW的虚拟频谱仪的设计与实现134.1虚拟频谱仪的整体设计134.2软件部分设计134.3仿真信号的频率分析17结论20参考文献221绪论1.1研究背景随着科学的发展,人们对电子科技的需求也越来越高,特别在研发生产中,人们要对各种产品的功能要有足够的了解才能得到灵活运用,尤其在产品的调试阶段,人们往往需要借助一些仪器工具来对产品进行测量控制,在工控、消费电子、智能家电的生产过程中,我们往往需要用仪器来帮助我们来完成产品的设计,甚至需要专门的测试仪器。
例如我们常见的示波器、滤波器、频谱仪、模拟信号发生器等都可以帮助我们实时的掌握被测控对象的运行信息,但他们都是传统的仪器,传统仪器往往会受到功能单一、价格昂贵的限制,所以市场上这类电子产品的需求并不高,人们需要一种成本低,功能强的仪器来代替传统仪器,所以虚拟仪器技术就在这个背景下被发展起来了。
虚拟仪器是通过LabVIEW软件(可安装在计算机上的应用软件)开发平台将计算机的硬件资源与传统电子仪器仪表的设计理念整合起来,在计算机硬件平台的支持下,通过软件来实现信号的产生、分析和处理,并能在软件窗口内显示结果,达到方便人们测试产品、实时掌握被控对象的效果。
虚拟仪器的出现开辟了仪器测量技术的新理念,虚拟频谱仪的设计就是在这个理念下产生的,它可以替代传统的虚拟频谱仪器来实现信号的测量,频谱分析处理和输出显示结果等功能,大大降低了生产成本,为人们实时掌握信号变化提供了方便。
1.2虚拟仪器的特点及发展1.2.1虚拟仪器的特点虚拟仪器是利用计算机的软硬件资源平台和应用软件的兼容性[1],通过软件编程来实现信号或者数据的采集及处理。
虚拟仪器是在LabVIEW的软件窗口内,采用可视化编程语言和控制,用软件窗口的控制面板来取代传统的控制面板的仪器仪表。
软件窗口控制面板上不仅设置了传统仪器控制面板相似的按键、旋钮等控件,而且还具有类似于我们C语言中的for循环、while循环、条件选择等编程语言结构控件。
在操作时,用户可通过鼠标或者键盘来操作软件窗口,来完成用户想要的虚拟仪器软件设计。
1.2.2虚拟仪器相比于传统仪器的优势虚拟仪器相比与传统仪器还有如下几个方面的优势:
1,与传统仪器的功能是由生产厂家定义而受限于生产厂家相比虚拟仪器的功能是用户自己来定义的。
2,虚拟仪器技术关键在于软件编程的多样性和合理性,受硬件的局限性很小,因此虚拟仪器可以方便的与其他设备建立连接,还可以通过网络进行多个用户的信息共享。
3,虚拟仪器可以直接对数据进行编辑,利用计算机足够的数据存取容量把数据通过计算机总线传输给存储器或者打印机,能够对数据进行实时传输和存储。
4,具有一个完美的仪器控制模块的虚拟仪器,具有很大的灵活性,可以使用多种方法显示,并进行数据采集,控制过程分析。
5,虚拟仪器是基于软件开发的仪器测试技术,设备材料利用率低,降低了开发及维护的成本。
1.2.3虚拟仪器的发展虚拟仪器和相对于传统仪器而体现的优点不仅促进了虚拟仪器的发展,同时也充分发挥了计算机操作系统的兼容性和数据处理能力,用软件使其发挥更多功能的作用,推进仪器测量技术的的飞速发展。
不论是在国内还是国外,虚拟仪器的便捷性和灵活性受到了工程师们的欢迎,在这种大背景下,虚拟仪器正朝着高速、高效、高可靠性和高精度的方向发展。
1.3本设计的结构本设计的核心任务是利用LabVIEW软件来设计虚拟频谱仪,来实现测试信号的产生、采集、滤波、傅里叶变换和频谱分析。
本设计首先介绍了虚拟仪器的研究背景和应用,然后介绍了虚拟仪器的特点、优势和发展情况;本文第2节详细介绍了虚拟仪器的概念和LabVIEW软件的应用介绍;第3节介绍了本次毕业设计虚拟频谱仪的功能原理和功能分析方法;第4节介绍了虚拟频谱仪的设计生成过程及具体步骤;并在结论中为整编论文做了总结。
2虚拟仪器及LabVIEW软件介绍2.1虚拟仪器的简介传统的仪器主要由控制面板,信号的输入和输出端口和显示屏等几个部分组成。
操作面板有开关、旋钮、刻度值、选择按键等。
检测结果一般会通过数字、图形显示在屏幕上,也可以通过打印输出。
由于传统仪器的软件和硬件电子电路都固化在仪器实现控制功能,功能单一,用户的灵活程度低,并且传统仪器的功能更新慢,开发成本高,随着技术的提高,人们就又发明了智能化的仪器,但是智能化仪器仍然没有摆脱单一功能的限制。
由于这些原因,传统仪器仪表已经难以满足人们的需求,开发人员要解决这个问题,就希望只是在必要的硬件支持下,可以通过软件来做成测试仪器,于是就产生了虚拟仪器的设计理念。
虚拟仪器就是由用户自己定义虚拟仪器的功能,相当于一套专门为用户定制的仪器。
人们在利用虚拟仪器设计软件在计算机上运行时也就是在操作一台具有特定作用的测量控制仪表仪器。
表2-1为传统仪器与虚拟仪器的比较一览表,见下页。
表2-1传统仪器与虚拟仪器的比较传统仪器虚拟仪器硬件是关键软件是关键仪器的功能出厂即固定仪器的功能用户可自定义系统是封闭的,与其他设备连接有局限性开放系统,可方便同网络设备及外设连接价格昂贵,功能单一价格低,功能多技术更新速度慢技术更新速度快开发和维护成本高开发和维护成本低多为专业实验室拥有个人实验室2.2虚拟仪器的构成虚拟仪器包括硬件资源(计算机硬件接口设备)和软件资源(设备驱动软件和虚拟控制面板)两部分组成。
硬件资源是虚拟仪器软件资源的基础。
应用软件资源则是虚拟仪器的核心内容,软件资源里面包含丰富的函数库和功能模块,通过不同的功能模块组合成具有不同功能的仪器,以实现不同的测量和控制功能。
虚拟仪器软件具有相对直观化的用户应用程序和接近底层驱动的设备驱动程序两部分。
如图2-1所示,设备驱动程序是连接应用程序与底层设备的基础。
通过接口api来实现设备驱动程序和开发环境的连接,从而实现硬件设备的控制。
图2-1虚拟软件体系结构2.3LabVIEW简介2.3.1LabVIEW知识简介LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench)是由美国国家仪器(NI)公司编写开发的。
它与VisualBasic语言、C语言、Java语言等的编程风格不同,后者是运用文本语言编写的程序代码,而LabVIEW则是运用图形化的编程语言来编写的,它是用图形控件来代替了文本程序代码。
而且LabVIEW还提供很多具有特定功能的控件可供用户使用。
其功能还包含文本语言里的子函数调用,而且这种函数嵌套不受限制的[2]。
LabVIEW软件版本所提供的图形控件在研究开发人员之间用的大部分是一致的[3],这使得编程语言更加具有可读性,如下图2-2所示为LabVIEW的初始界面:
图2-2LabVIEW的初始界面2.3.1LabVIEW的基本程序构成LabVIEW的核心是VI。
LabVIEW包括两个面板[4],一个是前面板,另一个是程序面板。
前面板窗口(如图2-3)是一个图形用户界面,它是LabVIEW的虚拟仪器面板,相当于传统仪器的控制面板及显示屏幕,它有效的将程序和用户联系起来,是程序运行时输入和输出信息的窗口。
如图2-4所示,图中可以看到菜单栏中软件呈现的各种功能、程序运行停止功能以及用户输入和输出显示功能等。
我们可以利用软件具备的各种功能和控件来设计我们的前面板。
图2-3LabVIEW前面板程序框图窗口(如图2-4)提供了图形化程序语言,相当于传统仪器硬件内固化的程序,在程序框图中程序员不仅要能够控制和操作前面板上各个控件的功能,而且还要用图形化的语言来编写程序代码,。
如图2-5所示,程序框图除了能显示前面板上的控件外(二者图标不同,意义相同),还可以显示前面板上各个控件的端子并把各个端子连接起来。
在程序框图中各个控件接口之间的连线即数据图2-4LabVIEW程序面板线或者数据流。
控件间的数据信息就通过数据线在功能控件模块之间传递。
LabVIEW的编程语言和文本程序语言不同,它是根据数据线上的信息来运行程序的,只有当控件所要求的输入数据完全被控件接受到后程序才能运行,然后控件处理数据,待处理完成之后向其所有的输出端口输出相应的信息数据,这些数据再沿数据线流向其他的控件或者功能模块中进行数据或者信号处理分析。
3虚拟频谱仪的功能介绍3.1虚拟频谱仪的工作原理虚拟频谱仪主要有LabVIEW软件来设计,控制完成信号的生成、采集、波形滤波处理和幅值频谱显示等功能。
其设计思路流程图如下图3-1所示:
图3-1设计流程图虚拟频谱仪的设计包括程序前面板的设计和程序框图的设计。
前面板提供了信号生成模块,可以通过其属性内容选择输入的仿真信号[5],例如方波信号,正弦波信号,三角波信号等,类似的选择还有滤波器的选择,而且在前面板可以对信号的频率和幅值进行调节。
并且在前面板上,可以显示输入的原始波形,通过滤波模块滤波后的波形,以及进行信号分析处理之后的结果显示等。
虚拟频谱仪的主要功能有:
(1)信号生成类型选择的控制;
(2)动态显示选择控制信号的波形;(3)调节信号的频率和幅值;(4)测量显示信号处理过的幅值谱和频率谱。
依照图3-1的设计流程图和虚拟仪器软件LabVIEW开发平台来设计虚拟频谱仪,利用该软件的前面板和程序框图上各个控件的功能以及该软件支持的函数库,通过其仿真信号生成模块产生信号,从而实现信号的采集、分析和处理,从而实现虚拟频谱仪的功能。
这样一个具有测试功能的虚拟仪器频谱仪就完成了。
3.2虚拟频谱仪的设计3.2.1信号频谱分析的知识简介在进行虚拟频谱仪设计前,首先要掌握信号的理论知识,如信号的时域分析、频域分析、频谱分析、傅里叶变换等。
时域是表示信号[6]与时间的变化关系。
频域是用坐标系来表示信号的频率特性。
对任何一个事物的描述都需要从多个方面进行描述才能把该事物与其他事物区分开来。
例如,眼前有一台电脑,我们可以描述它多方面的特征如品牌、型号,性价比,价格等。
同理,对于信号我们也要研究它多方面的特性。
比如信号的时域特性和时域分析以及频域特性和频域分析。
时域分析是指信号随时间变化而变化的分析,频域分析是指在坐标上显示信号的频率变化。
图3-2是一个因受到噪声干扰的含有多个频率周期分量的信号的波形,虽然从波形上看不出其有什么特点,但是从图3-3的功率谱上却可以识别出该信号包含有的四个周期分量,信号的频谱可以更清楚的表示在不同的频率下信号的特性和变化[7]。
图3-2受噪声干扰的多频率周期信号的波形图3-3受噪声干扰的多频率周期信号的功率谱事物是按时间的先后顺序发展的,所以在测试一个产品的功能时,通常是在时间的变化中来检测,时域分析就是通过这个来研究信号的变化。
频谱分析主要用于分析信号的周期频谱分量,它的变化可以帮助我们理解在不同时期的信号分量的波形特征。
3.2.2信号频谱分析的方法在工作中我们用频谱分析仪来分析信号的频谱,频谱仪有模拟式和数字式[8]两种工作模式。
模拟式频谱仪是在模拟滤波器的基础上从信号中选出不同的频率分量;数字式频谱仪是在数字滤波器和傅立叶变换的基础上实现对信号的频谱分析并采用傅立叶变换将时域信号x(t)变换为频域信号X(f)来帮助人们了解信号的特征。
傅立叶变换用于信号的频谱分析[9][10]的重要工具,时域信号x(t)的傅立叶变换:
(3-1)式中f为频率,X(t)为时域信号表示,X(f)为频域信号表示[11]。
3.2.3周期信号的频谱分析周期信号是在一定规律下会重新出现的信号,满足条件:
(3-2)。
很多周期函数信号都可以展开成正交函数来线性组合成无穷级数,如正交函数集是三角函数集或者指数函数集,则可把它展开成为傅立叶级数,一般表达式为:
(3-3)直流分量幅值为:
(3-4)各余弦分量幅值为:
(3-5)各正弦分量幅值为:
(3-6)周期信号的三角函数展开式的另一种形式为:
(3-7)直流分量幅值为:
(3-8)各频率分量幅值为:
(3-9)各频率分量的相位为(3-10)式中,T—周期,;--基波圆频率;f0—基波频率;。
傅立叶级数的复指数展开式:
(3-11)(3-12)其中:
;。
该项目将习惯于图形表示,如图,你可以得到的振幅谱和频率谱,和被称为实部和虚部频谱。
周期信号的频谱具有三个特点:
1、周期信号的频谱是离散的,由一系列冲击函数组成离散频谱。
2、每条谱线只会出现在基波频率的谐波频率处。
3、各频率分量的谱线高度表示该谐波分量的幅值或相位角。
3.2.4快速傅里叶变换(FFT)快速傅里叶变换是在DFT(离散傅里叶变换)的算法的基础上进行改进的可用它来减少计算次数,缩短计算时间获得的新算法,简称FFT。
在信号的采样点数是2的幂次方时就可以采用这种算法。
LabVIEW还提供了FFT图标可供用户直接使用来进行频谱分析。
问题在于如何选取采样的时间间隔及取多少个采样点N,截取长度的大小,以保证频谱分析的精度。
栅栏效应的概念:
无限长的信号的频谱是连续的,当我们分析它的频谱的计算机,它必须被截断,并使它成为有限长度信号。
信号在被有限的截取之后就转化为周期为的信号,同时频率也由原来的连续谱成为离散谱。
于是处在离散谱之间信号频谱就被丢掉,用这种方法只能算出信号连续频谱中N个抽样点处的值,而漏掉一些频谱,所以它不能完全代表频谱的分布,像个栅栏一样,所以把这种现象称为栅栏效应。
4基于LabVIEW的虚拟频谱仪设计与实现4.1虚拟频谱仪的整体设计虚拟频谱仪主要由虚拟仪器的设计软件LabVIEW的程序前面板和程序框图组成。
它可以对仿真信号模块生成的信号进行时域分析和频谱分析,通过计算机软件模块和数据处理以后,把结果显示在前面板上。
虚拟频谱仪的功能是由用户自己定义的,当我们要想让它实现更多功能时,可以随时添加和修改它,以满足我们的需求。
4.2软件部分的设计4.2.1前面板的设计本设计是应用LabVIEW2012版本。
前面板是面向用户对象的虚拟控制面板,设计的是用于设置输入数值、控制信号和观察输出数值及输出波形的控制端,在该控制面板上用户可以通过各种按钮、开关、旋钮等控制虚拟频谱仪的工作,例如:
选项卡选择控件、信号各参数设定数值控件、滤波器设置控件、结果显示控件等。
图4-1就是本设计虚拟频谱仪的前面板,从前面板上可看出此频谱仪有如下的功能:
1、仿真信号生成选择功能。
在LabVIEW软件的前面板上添加了仿真信号生成模块。
用户可以通过该模块来设置所需要输入的仿真信号,例如,加噪声的正弦波、方波、三角波等。
此外,本设计还另外添加了可供选择的初始信号的频率、幅值等。
2、波形显示功能。
在前面板放置有波形显示控件,点击窗口左上角的“运行”按钮和前面板的开关按钮,即可显示出滤波前后信号的波形变化、幅值谱的图形显示和功率谱的图形显示等。
且可对信号幅值的峰值、功率的峰值进行数字显示。
3、滤波器选择功能。
本设计中用户可通过前面板的滤波来控制模块来选择不同的滤波器观察其滤波效果。
此外,还可自主对滤波器的采样频率进行调整。
4、控制仿真信号的幅值和频率以及滤波器的采样频率、幅值的功能。
由于这些设计的功能引用的是同一种控件模块,所以设置这样的模块来控制仿真信号的幅值和频率,滤波器的采样频率。
这样就可以直接改变仿真信号的频率、幅值等以方便适应不同的情况,我们还可以直接改变滤波器的幅值、采样频率来实现在不同情况下各种滤波的波形,从而使波形不受仿真信号频率的限制。
这样就可以通过改变滤波器的波形、采样频率和类型来实现不同的的滤波效果。
图4-1虚拟频谱分析仪前面板5,显示滤波器滤波后的波形的高低电平和幅值。
观察信号的电压变化。
以上这些功能就是本虚拟频谱仪设计能实现的所有功能,将这些功能集合在一起就组成了本次虚拟频谱仪的前面板,将这些功能模块合理放置以后如图所示,在显示模块的左边共有二个控制输入参数的控件。
通过信号参数的设定还可以设定仿真信号的频率和幅值。
滤波器模块可以输入设定滤波器的采样频率、幅值、周期和滤波类型。
在右边有六个数值显示模块,可以分别显示滤波后波形的峰峰值的大小,正峰值和反峰值大小,以及波形的电平值,在功率谱和幅值谱中也添加了功率谱峰值显示模块,可以直接看出波形的功率谱和幅值谱。
4.2.2程序框图的设计每一个程序的前面板设计都有相应的一个程序框图设计。
程序前面板的设计完成后,并不是程序结束了,还要进行程序框图的设计。
打开LABVIEW设计软件的程序框图窗口,进入程序框图的设计界面,由于我们已经完成了前面板的设计,所以在程序框图中会显示程序前面板已经选择的控件,但是它们的图标是不同的,所以要注意区分。
根据本设计虚拟频谱仪的功能,事先想好我们要用到的那些控件并表示出来,利用LABVIEW中的这些功能控件,由虚拟频谱分析仪前面板的各控件的作用与联系,在程序框图设计窗口中合理放置各个程序需要的控件模块,用鼠标可以直接将他们相关的控件连接起来以实现虚拟频谱仪的功能。
在该程序框图中包括仿真信号生成模块、滤波器设计、波形频谱分析模块,数据流的编辑主要是对端口图标的连接,用连线工具进行连接时,如果端口无法建立连接关系,说明相连的数据类型不匹配,仔细检查数据后重新建立连接。
本设计用到了一个条件结构,这点和C语言中的if条件结构类似[12],它的程序框图如图4-2所示。
图4-2程序框图4.2.2.1仿真信号生成模块LabVIEW的函数库中有丰富的仿真信号,如方波、正弦波、三角波等。
设计时只需将所要的子VI放入一个仿真信号生成模块即可。
也可利用声卡采集到的声音进行信号处理分析。
仿真信号生成的程序框图如图4-3所示。
在设计过程中,包含了一个仿真信号生成模块,在该模块中有正弦+均匀的白噪声、方波、三角波。
如果想得到其它噪声的波形,则可以在设计的程序框图中对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW 虚拟 频谱仪 设计 实现 毕业论文