毕业设计(论文)-虚拟仪器及LabVIEW.doc
《毕业设计(论文)-虚拟仪器及LabVIEW.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-虚拟仪器及LabVIEW.doc(36页珍藏版)》请在三一文库上搜索。
1、1 虚拟仪器及LabVIEW介绍1.1 虚拟仪器概述 测量仪器发展至今,大体经历了四代历程,即模拟仪器、分立元件式仪器、数字化仪器和智能仪器。由于微电子技术、计算机技术、通信技术、网络技术的高度发展及其在电子测量技术与仪器上的应用,新的测试理论、新的测试方法、新的测试领域以及新的仪器结构不断出现,在许多方面已经突破了传统仪器的概念,电子测量仪器的功能和作用已经发生了质的变化,其中计算机处于核心地位,计算机软件技术和测试系统更紧密地结合成一个有机整体,导致仪器的结构、概念和设计观点等也发生了突破性的变化。在这种背景下,美国国家仪器公司(National Instruments)在20世纪80年代
2、最早提出虚拟仪器(Virtual Instrument)的概念,同时推出了用于虚拟仪器开发的工程软件包LabVIEW。NI公司宣称“The Software is the Instrument”,即“软件就是仪器”。在这里,计算机是虚拟仪器的核心设备,该仪器的功能是通过软件仿真实现的。它将传统仪器由硬件电路实现的数据分析处理与显示功能,改由功能强大的计算机来执行,所以计算机是其核心;当计算机与适当的I/O接口设备配置完毕,虚拟仪器的硬件平台就被确定,此后软件就成为仪器的关键部分,这也是“软件就是仪器”之说的来由。这意味着只要按照测量原理,采用适当的信号分析技术与处理技术,编制某种测量功能的软件
3、就可构成该种功能的测量仪器。虚拟仪器的出现是仪器发展史上的一场革命,代表着仪器发展的最新方向和潮流,对科学技术的发展和工业生产的进步将产生不可估量的影响,同时对改善高校实验教学仪器设备,提高教学质量也是一个福音。1.2labview简介LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“”语言。使用这种语言编程时,基本上不写程序代码,取而
4、代之的是流程图或流程图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。1.3 虚拟仪器技术1.3.1 虚拟仪器的定义虚拟仪器(Virtual Instrument)是基于计算机的仪器。在计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一
5、种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器的功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。虚拟仪器是基于通用计算机的测试、测量和控制系统,由于能充分利用计算机的软硬件资源,因此虚拟仪器具有功能强大、结构灵活和性价比高等特点,可在很大范围内替代传统仪器。虚拟仪器通常具有一个或多个友好的虚拟面板(人机界面),用户可通过虚拟面板很方便地进行操作。用户可对虚拟仪器的功能和用途进行定义、组合和扩展,从而更快、更省和更方便的解
6、决测试、测量和自动化的应用问题。 下面的框图反映了常见的虚拟仪器方案。信号调理数据采集卡数据处理虚拟仪器面板被测对象图1-1 常见虚拟仪器应用方案虚拟仪器由通用仪器硬件平台(简称硬件平台)和应用软件两大部分组成。1.3.2 虚拟仪器硬件平台(1) 计算机它一般为一台PC机或者工作站,它是硬件平台的核心。虚拟仪器使用的个人计算机中,微处理器和总线成为最重要的因素。 其中,微处理器的发展是最迅速的,它使虚拟仪器的能力得到极大地提高。80年代末制造的虚拟仪器频率分析仪完成一个1024点的快速傅立叶变换需要1秒钟的时间;今天的系统可以在1毫秒内完成同样的运算,速度提高了一千倍。这意味着,如果以前人们是
7、用虚拟仪器来做快速傅立叶变换观察信号,那么今天可以利用它进行高速的实时运算,并将之应用于过程控制和其它控制系统中。总线技术的发展也为提高虚拟仪器的处理能力提供了必要的支持。PCI总线性能比ISA总线提高了近十倍,使得微处理器能够更快地访问数据。使用ISA总线时,插在电脑中的数据采集板的采集速度最高为2MBps;使用PCI总线时,最高采集速度可提高到132MBps。由于总线速度的大大提高,现在可以同时使用数块数据采集板,甚至图象数据采集也可以和数据采集结合在一起。(2) I/O接口设备I/O接口设备主要完成被测输入信号的采集、放大、摸/数转换。不同的总线有其相应的I/O接口硬件设备,如利用PC机
8、总线的数据采集卡/板(简称为数采卡/板,DAQ)、GPIB总线仪器、VXI总线仪器模块、串口总线仪器等。虚拟仪器的构成方式主要有5种类型,如图1-2所示。 I/O接口设备PC-DAQGPIB仪器串口仪器VXI模块PXI模块被测信号计算机图1-2虚拟仪器的构成方式PCDAQ系统PCDAQ系统是以数据采集板、信号调理电路及计算机为仪器硬件平台组成的插卡式虚拟仪器系统。这种系统采用计算机本身的ISA总线,将数采卡/板(DAQ)插入计算机的空槽中即可。GPIB系统GPIB系统是以GPIB标准总线仪器与计算机为仪器硬件平台组成的虚拟仪器测试系统。VXI系统VXI系统是以VXI标准总线仪器模块与计算机为仪
9、器硬件平台组成的虚拟仪器测试系统。PXI系统PXI系统是以PXI标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。串口系统串口系统是以Serial标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。无论上述哪种VI系统,都通过应用软件将仪器硬件与计算机相结合。考虑到PCDAQ插卡式虚拟仪器在五种虚拟仪器系统中,是虚拟仪器最基本最廉价的构成形式。在经费不足或时间不充裕的情况下经常被采用,下面就对这种虚拟仪器系统做简单的介绍。它的硬件平台主要有PC计算机和数据采集卡(DAQ卡)组成。数据采集卡(DAQ卡)由以下几个部分组成:1. 多路开关。将各路信号轮流切换的放大器的输入端,
10、实现多参数多路信号的分时采集。2. 放大器。将前一级多路开关切换进入待采集信号放大(或衰减)至采样环节的量程范围内。通常实际系统中放大器作成增益可调的放大器,设计者可根据输入信号不同的幅值选择不同的增益倍数。3. 采样保持器。取出待测信号在某一瞬时的值(即实现信号的时间离散化),并在A/D转换过程中保持信号不变,如果被测信号变化很缓慢,也可以不用采样/保持器。4. A/D转换器。将输入的模拟量转化为数字量输出,并完成信号幅值的量化。随着电子技术的发展,目前通常将采样/保持器同A/D转换器集成在一块芯片上。以上四个部分都处在计算机的前向通道,是组成数据采集卡的主要环节,与其它有关电路如定时/计数
11、器、总线接口电路等集成在一块印刷电路板上,即构成数据采集卡(DAQ卡),完成对信号数据的采集、放大及模/数转换任务。PC-DAQ插卡式虚拟仪器系统充分利用了PC计算机的机箱、总线、电源及软件资源,但是因而也受到PC计算机机箱环境和计算机总线的限制,存在诸多的不足,如电源功率不足、散热条件差等。1.3.3 虚拟仪器的软件开发虚拟仪器必须有合适的软件工具,目前的虚拟仪器软件开发工具有如下两类。l 文本式编程语言:如C ,Visual C + + , Visual Basic等l 图形化编程语言:如 LabVIEW,HPVEE等这些软件开发工具为用户设计虚拟仪器应用软件提供了最大限度的方便条件与良好
12、的开发环境。本文中,虚拟仪器设计所涉及的是LabVIEW虚拟仪器编程语言。虚拟仪器软件由两部分构成,即应用软件和I/O接口仪器驱动程序。虚拟仪器的应用程序包含两方面功能的程序:l 实现虚拟面板功能的前面板软件程序。l 定义测试功能的流程图软件程序。I/O接口仪器驱动程序。这类程序用来完成特定外部硬件设备的扩展、驱动和通信。大部分虚拟仪器开发环境均提供一定程度的I/O设备支持。许多I/O驱动程序已经集成在开发环境中。以LabVIEW为例,他能够支持串行接口、GPIB及VXI等标准总线和多种数据采集板,LabVIEW还可以驱动许多仪器公司的仪器,如Hewlett-Packard,Philips,T
13、ektronix,B&K,Fluke等。同时,LabVIEW还可调用Windows动态连接库和用户自定义的动态连接库中的函数,以解决对某些非NI公司支持的标准硬件在使用过程中的驱动问题。1.4虚拟仪器的特点及优势1.4.1 虚拟仪器的特点虚拟仪器的起源可以追朔到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。虚拟仪器
14、的主要特点有:n 尽可能采用了通用的硬件,各种仪器的差异主要是软件。n 可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。n 用户可以根据自己的需要定义和制造各种仪器。n 多种技术的集成, 包括硬件技术和软件技术; 微电子技术、测量技术、计算机技术和网络技术。n 利用上述多个领域最新技术不断地进步。n 多种用途仪器设备的集合。n 开发周期短、成本低、应用领域广和性能价格比高。1.4.2 虚拟仪器的优势虚拟仪器技术的优势在于可由用户定义自己的专用仪器系统,且功能灵活,很容易构建,所以应用面极为广泛。虚拟仪器技术十分符合国际上流行的“硬件软件化”的发展趋势,因而常被称作“软件
15、仪器”。它功能强大,可实现示波器、逻辑分析仪、频谱仪、信号发生器等多种普通仪器全部功能,配以专用探头和软件还可检测特定系统的参数,如汽车发动机参数、汽油标号、炉窑温度、血液脉搏波、心电参数等多种数据;它操作灵活,完全图形化界面,风格简约,符合传统设备的使用习惯,用户不经培训即可迅速掌握操作规程。1.5 LabVIEW开发平台介绍1.5.1 LabVIEW应用程序的构成所有的LabVIEW应用程序,即虚拟仪器(NI),它包括前面板(front panel)、流程图(block diagram)以及图标/连接器(icon/connector)三部分。1. 前面板前面板是图形用户界面,也就是VI的虚
16、拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制(control)和显示对象(indicator)。图1-3所示是一个随机信号发生和显示的简单VI的前面板,上面有一个显示对象,以曲线的方式显示了所产生的一系列随机数。还有一个控制对象开关,可以启动和停止工作。显然,并非简单地画两个控件就可以运行,在前面板后还有一个与之配套的流程图。控制对象(输入)显示对象(输出)图1-3随机信号发生器的前面板2. 流程图流程图也称为后面板,提供VI的图形化源程序。在流程图对VI编程,以控制和操纵定义在前面板上的输入和输出功能。流程图中包括前面板上的控件和连线端子,还有一
17、些前面板上没有,但编程必须有的东西,例如函数、结构和连线等。图4是与图3对应的流程图。我们可以看到流程图中包括了前面板上的开关和随机数显示器的连线端子,还有一个随机数发生器的函数及程序的循环结构。随机数发生器通过连线将产生的随机信号送到显示控件,为了使它持续工作下去,设置了一个While Loop循环,由开关控制这一循环的结束。函数:随机数发生器结构:循环与前面板控件对应的连线端子与前面板控件对应的连线端子图4随机信号发生器的流程图3. 图标/连接器VI具有层次化和结构化的特征。一个VI可以作为子程序,这里称为子VI(SubVI),被其他VI调用。图标与连接器在这里相当于图形化的参数。1.5.
18、2 LabVIEW的操作模板在LabVIEW的用户界面上,应特别注意它提供的操作模板,包括工具(Tools)模板、控制(Controls)模板和函数(Functions)模板。这些模板集中反映了该软件的功能与特征。1. 工具模板(Tools Palette)该模板提供了各种用于创建、修改和调试VI程序的工具,如图1-3所示。如果该模板没有出现,则可以在Windows菜单下选择Show Tools Palette命令以显示图1-5 LabVIEW的工具模板当从模板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状。当从Windows菜单下选择了Show Help Window功能后,把工具模
19、板内选定的任一种工具光标放在流程图程序的子程序(Sub VI)或图标上,就会显示相应的帮助信息。 2. 控制模板(Controls Palette)该模板用来给前面板设置各种所需的输出显示对象和输入控制对象。每个标代表一类子模板。图1-6 LabVIEW的控制模板 如果控制模板不显示,可以用Windows菜单的Show Controls Palette功能打开它,也可以在前面板的空白处,点击鼠标右键,以弹出控制模板。3. 功能模板(Functions Palette)该模板是创建流程图程序的工具,模板上的每一个顶层图标都表示一个子模板。若功能模板不出现,则可以用Windows菜单下的Show
20、Functions Palette功能打开它,也可以在流程图程序窗口的空白处点击鼠标右键以弹出功能模板,功能模板如图1-7所示。图1-7 LabVIEW的功能模板1.5.3 LabVIEW的特点LabVIEW(Laboratory Virtual Instrument Engneering Workbench)是由美国国家仪器公司(NI)在1986年推出的一种基于图形编程语言(G语言)的开发环境,它具有十分强大的功能,包括数值函数运算、数据采集、信号处理、输入/输出控制、信号生成、图象的获取、处理和传输等等。LabVIEW与C,Pascal,Basic等传统编程语言有着诸多相似之处,如相似的数
21、据类型、数据流控制结构、程序调试工具,以及模块化的编程特点等。但二者最大的区别在于:传统编程语言用文本语言编程;而LabVIEW使用图形语言(即各种图标、图形符号、连线等)编程,界面非常直观形象,而且使用的都是测试工程师们熟悉的旋钮、开关、波形图等,因此是一种直觉式图形程序语言。用LabVIEW编程无须太多编程经验,只要以很直觉的方法建立前面板人机界面和方框图程序,便可以完成编程过程,使用户免于传统程序语言线性结构的困扰,这对于没有丰富编程经验的工程师们来说无疑是个极好的选择。同时,LabVIEW的执行顺序是依方框图间数据的传递来决定的,并不像传统文字式编程语言必须逐行地执行,因此用户能设计出
22、可同时执行多个程序的流程图。采用LabVIEW编程,其主要特点就是将虚拟仪器分解为若干基本的功能模块(相当于硬件设计的集成电路),模块的引脚代表输入/输出接口。编程者可以通过交互式手段,采用图形化框图设计的方法,完成虚拟仪器的逻辑和测量分析功能设计。LabVIEW程序设计过程与人们设计仪器的思维过程十分相似,程序框图就实现了程序代码功能,避免了一般程序设计从框图构思到程序表示的繁琐。LabVIEW编程的另一个优点是将软件的界面设计与功能设计独立开来,修改人机交互界面无须对整个程序进行调试,这对设计像仪器操作面板这样复杂的人机界面而言是十分方便的。LabVIEW还为用户提供了函数扩展功能,从而可
23、以调用C等传统编程语言写的程序代码、调用标准动态链接库等。1.5.4labview的优势1. 图形化编程环境。2可重用性高。3开发功能高效、通用。4支持多种仪器和数采硬件的驱动。5查错、调试能力强大。6. 支持多种操作系统。7. 网络功能强大。8开放性强。1.6虚拟仪器设计步骤通常,一个虚拟仪器的设计步骤如下。(1)在前面板设计窗口放置控件首先,在前面板开发窗口使用工具模板中的相应工具,从控制模板中取用和放置好所需控件,进行控件属性参数设置,标贴文字说明标签。(2)在流程图编辑窗口,放置节点、图框在流程图编辑窗口,使用工具摸板中相应工具,从功能模板中取用并放置好所需图标,它们是流程图中的“节点
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 虚拟仪器 LabVIEW
链接地址:https://www.31doc.com/p-3950313.html