毕业论文--基于LabVIEW的虚拟频谱仪的设计与实现 联系客服

发布时间 : 星期一 文章毕业论文--基于LabVIEW的虚拟频谱仪的设计与实现更新完毕开始阅读4cb110444b35eefdc8d333c4

2 虚拟仪器及LabVIEW软件介绍

2.1 虚拟仪器的简介

传统的仪器主要由控制面板,信号的输入和输出端口和显示屏等几个部分组成。操作面板有开关、旋钮、刻度值、选择按键等。检测结果一般会通过数字、图形显示在屏幕上,也可以通过打印输出。由于传统仪器的软件和硬件电子电路都固化在仪器实现控制功能,功能单一,用户的灵活程度低,并且传统仪器的功能更新慢,开发成本高,随着技术的提高,人们就又发明了智能化的仪器,但是智能化仪器仍然没有摆脱单一功能的限制。由于这些原因,传统仪器仪表已经难以满足人们的需求,开发人员要解决这个问题,就希望只是在必要的硬件支持下,可以通过软件来做成测试仪器,于是就产生了虚拟仪器的设计理念。

虚拟仪器就是由用户自己定义虚拟仪器的功能,相当于一套专门为用户定制的仪器。人们在利用虚拟仪器设计软件在计算机上运行时也就是在操作一台具有特定作用的测量控制仪表仪器。表2-1为传统仪器与虚拟仪器的比较一览表,见下页。

表2-1 传统仪器与虚拟仪器的比较

传统仪器 硬件是关键 仪器的功能出厂即固定 系统是封闭的,与其他设备连 接有局限性 价格昂贵,功能单一 技术更新速度慢 开发和维护成本高 多为专业实验室拥有 虚拟仪器 软件是关键 仪器的功能用户可自定义 开放系统,可方便同网络 设备及外设连接 价格低,功能多 技术更新速度快 开发和维护成本低 个人实验室 2.2 虚拟仪器的构成

虚拟仪器包括硬件资源(计算机硬件接口设备)和软件资源(设备驱动软件

4

和虚拟控制面板)两部分组成。硬件资源是虚拟仪器软件资源的基础。应用软件资源则是虚拟仪器的核心内容,软件资源里面包含丰富的函数库和功能模块,通过不同的功能模块组合成具有不同功能的仪器,以实现不同的测量和控制功能。

虚拟仪器软件具有相对直观化的用户应用程序和接近底层驱动的设备驱动程序两部分。如图2-1所示,设备驱动程序是连接应用程序与底层设备的基础。通过接口api来实现设备驱动程序和开发环境的连接,从而实现硬件设备的控制。

图2-1 虚拟软件体系结构

2.3 LabVIEW 简介

2.3.1 LabVIEW知识简介

LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是由美国国家仪器(NI)公司编写开发的。它与Visual Basic语言、C语言、Java语言等的编程风格不同,后者是运用文本语言编写的程序代码,而LabVIEW则是运用图形化的编程语言来编写的,它是用图形控件来代替了文本程序代码。而且LabVIEW还提供很多具有特定功能的控件可供用户使用。其功能还包含文本语言里的子函数调用,而且这种函数嵌套不受限制的[2]。LabVIEW软件版本所提供的图形控件在研究开发人员之间用的大部分是一致的[3],这使得编程语言更加具有可读性,如下图2-2所示为LabVIEW的初始界面:

5

图2-2 LabVIEW的初始界面

2.3.1 LabVIEW的基本程序构成

LabVIEW的核心是VI。LabVIEW包括两个面板[4],一个是前面板,另一个是程序面板。

前面板窗口(如图2-3)是一个图形用户界面,它是LabVIEW的虚拟仪器面板,相当于传统仪器的控制面板及显示屏幕,它有效的将程序和用户联系起来,是程序运行时输入和输出信息的窗口。如图2-4所示,图中可以看到菜单栏中软件呈现的各种功能、程序运行停止功能以及用户输入和输出显示功能等。我们可以利用软件具备的各种功能和控件来设计我们的前面板。

图2-3 LabVIEW前面板

程序框图窗口(如图2-4)提供了图形化程序语言,相当于传统仪器硬件内固

6

化的程序,在程序框图中程序员不仅要能够控制和操作前面板上各个控件的功能,而且还要用图形化的语言来编写程序代码,。如图2-5所示,程序框图除了能显示前面板上的控件外(二者图标不同,意义相同),还可以显示前面板上各个控件的端子并把各个端子连接起来。在程序框图中各个控件接口之间的连线即数据

图2-4 LabVIEW程序面板

线或者数据流。控件间的数据信息就通过数据线在功能控件模块之间传递。LabVIEW的编程语言和文本程序语言不同,它是根据数据线上的信息来运行程序的,只有当控件所要求的输入数据完全被控件接受到后程序才能运行,然后控件处理数据,待处理完成之后向其所有的输出端口输出相应的信息数据,这些数据再沿数据线流向其他的控件或者功能模块中进行数据或者信号处理分析。

7