《第1章----虚拟仪器测试系统课件.ppt》由会员分享,可在线阅读,更多相关《第1章----虚拟仪器测试系统课件.ppt(95页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 1第1章 虚拟仪器测试系统 第1章 虚拟仪器测试系统1.1 虚拟仪器1.2 基于虚拟仪器的测试系统1.3 LabVIEW开发环境本章小结思考与练习2 2第1章 虚拟仪器测试系统 1.1 虚 拟 仪 器虚拟仪器是计算机硬件资源、仪器与测控系统硬件资源和虚拟仪器软件资源三者的有效结合。本节将主要介绍虚拟仪器的基本概念、功能及组成等基本知识。3 3第1章 虚拟仪器测试系统 1.1.1 测量仪器的发展历程测量仪器发展至今,大体经历了四代发展历程,即模拟仪器、数字化仪器、智能仪器、虚拟仪器。虚拟仪器是现代计算机技术和测量技术相结合的产物,是传统仪器观念的一次巨大变革,是将来仪器发展的一个重要方向。计
2、算机和仪器的结合有两种方式。一种方式是计算机装入仪器,其典型的例子就是所谓的智能化仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器的功能也越来越强大,目前已经出现含有嵌入式系统的仪器。另一种方式是将仪器装入计算机,以通用的计算机硬件及操作系统为依托,实现各种仪器的功能,即虚拟仪器(Virtual Instrument,VI)。4 4第1章 虚拟仪器测试系统 1.1.2 虚拟仪器的基本概念虚拟仪器是指在以计算机为核心的硬件平台上,由用户设计和定义其功能,具有虚拟仪器面板,由测试软件实现其测试功能的一种计算机仪器系统。虚拟仪器技术利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试
3、、测量和自动化的应用。灵活高效的软件能帮助用户创建完全自定义的用户界面,模块化的硬件能方便地提供全方位的系统集成,标准的软硬件平台能满足对同步和定时应用的需求。5 5第1章 虚拟仪器测试系统 虚拟仪器概念最早是由美国国家仪器公司(NI)在1986年提出的,同时,NI公司推出了图形化的虚拟仪器编程环境LabVIEW,标志着虚拟仪器设计软件平台基本形成,虚拟仪器从概念构思变为工程师实现的具体对象。“虚拟”主要包含两个方面的含义:6 6第1章 虚拟仪器测试系统(1)虚拟仪器的面板是虚拟的。虚拟仪器面板上各种图标与传统仪器面板上的各种器件所完成的功能是相同的,由各种开关、按钮、显示器等图标实现仪器电源
4、的通、断,被测信号的输入通道、放大倍数等参数设置及结果的数值显示、波形显示等。传统仪器面板上的器件都是实物,而且是由手动和触摸进行操作的。虚拟仪器前面板是外形与实物相像的图标,每个图标的“通”、“断”、“放大”等动作通过用户操作计算机鼠标或键盘来完成。(2)虚拟仪器测量功能是通过软件来实现的。7 7第1章 虚拟仪器测试系统 1.1.3 虚拟仪器与传统仪器的比较传统仪器由仪器厂商定义其功能,仪器一旦出厂,其功能已经确定。用户要修改仪器的功能需要先研究原仪器的电路图,再设计原理图,最后修改电路。由于现在电路基本是集成功能的,因此电路的修改比较困难。在这样的环境下,用户自己修改传统仪器功能成本很高。
5、8 8第1章 虚拟仪器测试系统 虚拟仪器彻底改变了传统仪器由生产厂家定义功能的模式,而是在少量附加硬件的基础上由用户定义仪器功能。因为它的运行主要依赖软件,所以修改或增加功能、改善性能都非常灵活,也便于利用PC的软硬件资源和直接使用PC的外设及网络功能。虚拟仪器不但造价低,而且通过修改软件可增加它的适应性,从而延长它的生命周期,是一种具有很好发展前景的仪器。传统仪器与虚拟仪器的比较如表1-1所示。9 9第1章 虚拟仪器测试系统 1010第1章 虚拟仪器测试系统 1.1.4 虚拟仪器的基本功能虚拟仪器的基本功能与传统仪器类似,也是由信号采集与控制、信号分析与处理和结果表达与输出三大功能模块组成,
6、其基本功能组成如图1.1所示。虚拟仪器的这些功能单元是利用现有的计算机,配以必要的硬件和专用软件实现的。1111第1章 虚拟仪器测试系统 图1.1 虚拟仪器的基本功能组成1212第1章 虚拟仪器测试系统 1信号采集与控制功能对被测信号进行采集和控制是虚拟仪器的基本功能。此项功能主要由虚拟仪器的硬件平台完成。仪器硬件可以是基于PC的数据采集卡及必要的外围电路,或者是带标准总线接口的仪器,如GPIB、VXI、PXI总线仪器和串口仪器等。2信号分析与处理功能信号分析与处理功能主要由测试功能应用软件完成。虚拟仪器充分利用了计算机的高速存储、运算功能,并通过软件实现对输入信号的分析处理,如数字滤波、统计
7、处理、数值计算、信号分析、数据压缩、模式识别等数字信号处理。1313第1章 虚拟仪器测试系统 3结果表达与输出功能结果表达与输出由面板功能应用程序完成。虚拟仪器充分利用计算机的人机对话功能,完成仪器各种工作参数的设置,如功能、频段、量程等参数的设置。其对测量结果的表达与输出有多种方式,如屏幕显示,电、磁、光存储,绘图打印,网络传输等。1414第1章 虚拟仪器测试系统 1.1.5 虚拟仪器的基本组成部分虚拟仪器由通用仪器硬件平台(简称硬件平台)和软件两大部分组成。1硬件平台硬件平台包括计算机和I/O接口设备两部分。1)计算机计算机是硬件平台的核心。2)I/O接口设备I/O接口设备主要完成待测输入
8、信号的采集、放大和模数转换等。根据硬件平台接口设备的不同,虚拟仪器构成方式主要有五种类型,如图1.2所示。1515第1章 虚拟仪器测试系统 图1.2 虚拟仪器的构成方式1616第1章 虚拟仪器测试系统(1)PCI-DAQ。它是以数据采集板、信号调理电路及计算机为硬件平台组成的插卡式虚拟仪器系统,这种系统采用PCI或ISA计算机本身的总线,只需将数据采集卡/板(DAQ)插入计算机机箱内的空槽内即可使用。(2)GPIB仪器。它是以GPIB标准总线仪器与计算机为硬件平台组成的仪器测试系统。(3)串口仪器。它是以Seria1标准总线仪器与计算机为硬件平台组成的仪器测试系统。(4)VXI模块。它是以VX
9、I标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。1717第1章 虚拟仪器测试系统(5)PXI模块。它是以PXI标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。无论是哪种VI系统,都是通过应用软件将仪器硬件与计算机相结合,其中PCI-DAQ测量系统是最廉价的方式,它是构成VI系统的最基本的方式。1818第1章 虚拟仪器测试系统 2软件一套完整的虚拟仪器系统的软件结构一般来说分为四层。1)测试管理层 用户使用虚拟仪器生产厂商开发的测试管理程序,组成自己的一套测试仪器。这是虚拟仪器的优点之一,它可以方便地使用户根据自己的需要,建立自己的测试仪器。2)应用程序开发层用户使用应用程序开发软
10、件进行深层开发,以扩展仪器原有的功能。1919第1章 虚拟仪器测试系统 3)仪器驱动层 仪器驱动程序是完成对某一特定仪器控制与通信的软件程序集合。它负责处理与某一专门仪器通信和控制的具体过程,将底层复杂的硬件操作隐蔽起来,封装了复杂的仪器编程细节,为用户使用仪器提供了简单的函数调用接口,是应用程序实现仪器控制的桥梁。用户在应用程序中调用仪器驱动程序,进行仪器系统的操作与设计,简化了用户的开发工作。2020第1章 虚拟仪器测试系统 仪器驱动程序由生产商开发,针对不同类型的仪器有不同的驱动程序接口。为给用户提供方便、易用的仪器驱动程序,泰克公司、惠普公司和美国国家仪器公司等35家国际上最大的仪器公
11、司成立了VXI plug&play系统联盟,并推出VISA(Virtual Instrument Software Architecture)标准。2121第1章 虚拟仪器测试系统 4)I/O总线驱动层I/O接口软件位于仪器设备(即I/O接口设备)与仪器驱动程序之间,是一个完成对仪器寄存器进行直接存取数据操作,并为仪器设备与仪器驱动程序提供信息传递的底层软件,是实现虚拟仪器系统的基础。2222第1章 虚拟仪器测试系统 1.2 基于虚拟仪器的测试系统虚拟仪器技术利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。将虚拟仪器技术引入现代的测试系统中,可以充分发挥虚拟仪器技
12、术开发效率高、灵活性和兼容性强以及可重用度高的特点。由1.1.5节可知,基于虚拟仪器的测试系统通常由硬件系统和(测试)软件系统两部分组成。其中硬件系统部分主要包括计算机、数据采集卡、信号控制台、传感器等;软件系统用LabVIEW、LabWindows/CVI等虚拟仪器软件平台进行编写。基于虚拟仪器的测试系统组成如图1.3所示。2323第1章 虚拟仪器测试系统 图1.3 基于虚拟仪器的测试系统结构框图2424第1章 虚拟仪器测试系统 1.2.1 虚拟仪器测试系统的硬件系统虚拟仪器测试系统的硬件系统包括传感器、信号调理模块、数据采集卡、计算机等。2525第1章 虚拟仪器测试系统 1传感器传感器(T
13、ransducer)感应物理现象并生成数据采集系统可测量的电信号。在实际测试中,可以根据信号类型和检测方法来选择传感器,包括温度、速度、压力、位移、振动传感器等。例如,热电偶、电阻式测温计(RTD)、热敏电阻器和IC传感器可以把温度转变为ADC可测量的模拟信号。其他包括应力计、流速传感器、压力传感器,它们可以相应地测量应力、流速和压力。在所有这些情况下,传感器可以生成和它们所检测的物理量成比例的电信号。常用的传感器类型如表1-2所示。2626第1章 虚拟仪器测试系统 2727第1章 虚拟仪器测试系统 2信号调理模块信号调理简单地说就是将待测信号通过放大、滤波等操作转换成采集设备能够识别的标准信
14、号,包括功率放大、滤波处理、电气隔离以及为传感器提供激励(电压或电流)等。信号调理的常用类型在图1.4所示的基于虚拟仪器的测试系统结构框图中有详细表示。信号调理的关键技术可以将数据采集系统的总体性能和精度提高10倍,具体见7.5.4节,此处不作详细论述。2828第1章 虚拟仪器测试系统 A/D芯片只能接收一定范围的模拟信号,而传感器把非电物理量变换成电信号后,并不一定在这一范围内。传感器输出的信号有时还必须经放大、滤波、线性化补偿、隔离、保护等措施后,才能送A/D转换器。D/A转换器将二进制数字量转换为电压信号,许多情况下还必须经V/I转换才能驱动电动阀等执行机构,有时候还必须经过功率放大、隔
15、离等措施。2929第1章 虚拟仪器测试系统 3数据采集卡数据采集卡是虚拟仪器最常用的接口形式,具有灵活、成本低等特点,可以用来完成对信号数据的采集、放大及A/D转换任务。数据采集的具体内容见本书第7章。4计算机计算机可以是各种类型的计算机,如PC机、便携式计算机、嵌入式计算机等。3030第1章 虚拟仪器测试系统 图1.4 基于虚拟仪器的测试系统结构框图3131第1章 虚拟仪器测试系统 1.2.2 虚拟仪器测试系统的软件系统软件是虚拟仪器测试系统的核心。目前使用最多的虚拟仪器软件开发平台是NI公司的基于图形化的编程平台LabVIEW。本书后续章节将具体介绍LabVIEW的编程方法。3232第1章
16、 虚拟仪器测试系统 1.3 LabVIEW开发环境LabVIEW是一种图形化的编程语言,本节将通过介绍LabVIEW的特点、前面板、程序框图、工具栏及其编辑原理,使读者对LabVIEW开发环境有一个初步的认识。3333第1章 虚拟仪器测试系统 1.3.1 什么是LabVIEWLabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化的编程语言。它是美国NI公司推出的虚拟仪器开发平台,广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境
17、。3434第1章 虚拟仪器测试系统 图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是程序框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念。LabVIEW简化了虚拟仪器系统的开发过程,缩短系统的开发和调试周期,它让用户从繁琐的计算机代码编写中解放出来,把大部分精力投入系统设计和分析当中,而不再拘泥于程序细节。因此,LabVIEW是一个面向最终用户的工具。它可以增强使用者构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。3535第1章 虚拟仪器
18、测试系统 LabVIEW集成了满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通信的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。LabVIEW的函数库包括数据采集、GFIB、串口控制、数据分析、数据显示及数据存储等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其通过程序(子VI)的结果、单步执行等,便于程序的调试。因此,这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,并且其图形化的界面使得编程及使用过程都生动有趣。3636第1章 虚拟仪器测试系统 利用LabVIEW,可产生独立运行的可执行文件,它
19、是一个真正的32位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。LabVIEW 8.5的启动界面如图1.5所示,启动界面主要分为两部分:文件(包括新建和打开)和资源(包括用户指南、网络资源及范例)。3737第1章 虚拟仪器测试系统 图1.5 LabVIEW 8.5的启动界面3838第1章 虚拟仪器测试系统 文件的新建窗口可以新建空白VI、项目、以及基于模板的VI和全局变量等。启动界面实现文件新建的具体内容如图1.6所示。文件打开窗口可以打开最近打开的VI以及通过浏览对话框打开指定路径的VI。单击【文件】/【新建】/【VI】
20、,则会弹出一个未命名空白的VI编辑窗口,即前面板,如图1.7所示。3939第1章 虚拟仪器测试系统 图1.6 新建文件的具体内容 4040第1章 虚拟仪器测试系统 图1.7 前面板编辑窗口4141第1章 虚拟仪器测试系统 单击前面板菜单栏中【窗口】/【显示程序框图】,则会显示程序框图编辑窗口,如图1.8所示。设计一个虚拟仪器需在两个窗口中进行。第一个是前面板编辑窗口;第二个是程序框图编辑窗口。下面对它们分别加以介绍。4242第1章 虚拟仪器测试系统 图1.8 程序框图编辑窗口4343第1章 虚拟仪器测试系统 1.3.2 前面板和程序框图1前面板前面板是与用户直接接触的图形用户界面,即VI的虚拟
21、仪器面板。前面板由输入控件和显示控件组成,这些控件是VI的输入输出端口。输入控件是指旋钮、按钮、转盘等输入装置。显示控件是指图表、指示灯等显示装置。输入控件模拟仪器的输入装置,为VI的程序框图提供数据。显示控件模拟仪器的输出装置,用以显示程序框图获取或生成的数据。图1.9所示为找最大值虚拟仪器的前面板。4444第1章 虚拟仪器测试系统 图1.9 前面板4545第1章 虚拟仪器测试系统 前面板窗口所见的操作工具如图1.10所示。主菜单栏将在1.3.3节中介绍,编辑运行快捷工具将在2.6节中介绍,隐藏/显示即时帮助窗口工具将在本小节的程序框图部分介绍。前面板的设计就是从控件选板中选择相应的控件将其
22、放置到前面板,再由前面板配置工具对这些对象进行大小、颜色及位置的配置。前面板对象配置工具栏如图1.11所示。4646第1章 虚拟仪器测试系统 图1.10 前面板窗口的操作工具4747第1章 虚拟仪器测试系统 图1.11 前面板对象配置工具栏4848第1章 虚拟仪器测试系统 文本设置工具可以修改对象的字体、字体大小、字体式样、字体颜色等,如图1.12所示。对象对齐工具可以将多个对象左、右、上、下边缘对齐、垂直中心和水平居中。对象分布工具可以将对象进行垂直方向的上边缘、下边缘、垂直间隔及垂直压缩的分布,或者将对象进行水平方向的左边缘、右边缘、水平间距及水平压缩的分布。调整对象大小工具可以设置对象的
23、最大、最小宽度和高度以及设置对象的宽度和高度为需要值。对象设置的三个工具如图1.13所示。重新排序工具用于前面板多个对象的组合、锁定及重叠对象的前后重叠位置的安排,如图1.14所示。4949第1章 虚拟仪器测试系统 图1.12 文本设置工具5050第1章 虚拟仪器测试系统 图1.13 对象设置的三个工具5151第1章 虚拟仪器测试系统 图1.14 重新排序工具5252第1章 虚拟仪器测试系统 2程序框图程序框图是用户为完成特定功能而编写的程序,即VI的图形化源代码(又称G代码或程序框图代码)。其包含前面板对象在程序框图界面所对应的接线端、节点(程序框图上的对象)、连线以及结构。程序框图是VI测
24、试功能软件的图形化表述。图1.15所示为程序框图。5353第1章 虚拟仪器测试系统 图1.15 程序框图5454第1章 虚拟仪器测试系统(1)接线端:用以表示输入控件或显示控件的数据类型。在程序框图中可将前面板的输入控件或显示控件显示为图标或数据类型接线端。默认状态下,前面板对象在程序框图以图标形式显示。可以通过右击对象,单击【显示为图标】来改变接线端的显示方式。接线端是在前面板和程序框图之间交换信息的输入输出端口。在前面板控件中输入的数据(如图1.15中布尔型输入控件“停止”)将通过控件接线端传输至程序框图。(2)节点:程序框图上的对象,带有输入输出端,在VI 运行时进行运算。节点相当于文本
25、编程语言中的语句、运算、函数和子程序。图1.15中的最大值/最小值函数即是一个节点。5555第1章 虚拟仪器测试系统(3)连线:对程序框图对象进行连接,从而实现对象之间的数据传递。每根连线只有一个数据源,但可以与多个读取该数据的VI和函数连接。不同的数据类型的连线有不同的颜色、粗细和样式,如表1-3所示。断开的连线显示为黑色的虚线,中间有个红色的。出现断线的原因有很多,比如连接数据类型不兼容的两个对象时就会产生断线。5656第1章 虚拟仪器测试系统 5757第1章 虚拟仪器测试系统(4)结构:传统编程语言中循环、条件结构等的图形化表示。程序框图中使用结构可以对代码进行重复操作、有条件执行或按特
26、定顺序执行等。程序框图的设计就是将函数选板上的结构、函数节点和前面板对象在程序框图的接线端按照一定的方式和顺序用连线连接起来。在程序框图的设计过程中可以借助于即时帮助窗口来查看结构或函数节点的使用方法。5858第1章 虚拟仪器测试系统 即时帮助窗口的显示或隐藏由隐藏/显示即时帮助窗口工具实现。为显示即时帮助窗口工具,单击该图标则显示即时帮助窗口,同时该工具图标变为(隐藏即时帮助窗口)。以找最大值程序为例,当单击并将光标移至最大值函数时,即时窗口显示如图1.16所示。5959第1章 虚拟仪器测试系统 图1.16 即时帮助窗口显示6060第1章 虚拟仪器测试系统 3LabVIEW环境的三个选板以上
27、介绍的前面板和程序框图的设计都离不开LabVIEW环境的三个选板:工具选板、控件选板和函数选板。1)工具选板工具选板提供各种用于创建、修改和调试VI程序的工具。工具选板如图1.17所示。6161第1章 虚拟仪器测试系统 图1.17 工具选板6262第1章 虚拟仪器测试系统 如果该选板没有出现,可以单击主菜单【查看】/【工具选板】显示。当从选板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状。当从查看菜单下选择了“显示及时帮助”功能后,把工具选板内选定的任一种工具光标放在框图程序的子程序或图标上,就会显示相应的帮助信息。工具选板中各个工具图标的功能如表1-4所示。6363第1章 虚拟仪器测
28、试系统 6464第1章 虚拟仪器测试系统 续表6565第1章 虚拟仪器测试系统 控件和函数选板与上述工具选板不同,只显示顶层子选板的图标。在这些顶层子选板中包含许多不同的控件或函数子选板。通过这些控件或函数子选板可以找到创建程序所需的面板对象和框图对象。单击顶层图标就可以展开对应的控件或函数子选板,按下控件或函数子模板左上角的大头针就可以把对这个子选板变成浮动板留在屏幕上。6666第1章 虚拟仪器测试系统 2)控件选板控件选板用于前面板的编辑。其中包含各种各样的输入/输出控件和装饰图形。控件选板如图1.18所示。单击菜单【查看】/【控件选板】显示控件选板,或右击前面板空白处弹出控件选板。其中包
29、括新式、经典、系统、Express、用户控件及附加工具包等。这里介绍默认方式下显示的各个子选板(常用控件选板),如表1-5所示。6767第1章 虚拟仪器测试系统 图1.18 控件选板6868第1章 虚拟仪器测试系统 6969第1章 虚拟仪器测试系统 3)函数选板函数选板是创建程序框图的工具,如图1.19所示。单击主菜单【查看】/【函数选板】显示函数选板,或右击程序框图空白处弹出函数选板。下面介绍常用的函数子选板,如表1-6所示。7070第1章 虚拟仪器测试系统 图1.19 函数选板7171第1章 虚拟仪器测试系统 7272第1章 虚拟仪器测试系统 7373第1章 虚拟仪器测试系统 1.3.3
30、菜单栏LabVIEW菜单主要有主菜单和快捷菜单两类菜单,其中使用率最高的是快捷菜单,几乎所有用于创建VI的对象都有一个快捷菜单供选择和修改。在LabVIEW的前面板和程序框图,用户均可以看到主菜单栏,如图1.20所示。7474第1章 虚拟仪器测试系统 图1.20 主菜单栏7575第1章 虚拟仪器测试系统 主菜单栏包括文件、编辑、查看、项目、操作、工具、窗口、帮助共八个子菜单。(1)文件子菜单。进入LabVIEW窗口后,如果想新建、打开、保存VI或项目文件,选择文件子菜单中相应的选项即可。在文件子菜单中还可以打印和打印设置。另外选择文件子菜单中的VI属性还可以对VI进行各种各样的设置。(2)编辑
31、子菜单。在该子菜单中编程人员可以进行操作的撤销、重做、复制、粘贴、删除等编辑操作;可以对前面板上放置的输入控件中的值进行初始化;可以进行自定义控件、对齐网格线等操作。7676第1章 虚拟仪器测试系统(3)查看子菜单。如果要打开LabVIEW的三个选板(控件、函数、工具),可以在该菜单中选择相应的选项;此外该菜单中还有查看错误列表和VI层次的选项。(4)项目子菜单。该菜单包括新建、保存、打开、关闭、添加项目等。(5)操作子菜单。利用该菜单可以运行、停止VI,运行调试,还可进行程序运行结束后的打印、记录等操作设置。(6)工具子菜单。利用该菜单可进行NI数据采集设备的测试及配置操作,性能安全分析,动
32、态链接库的应用,VI的查找及发布等一些高级操作。7777第1章 虚拟仪器测试系统(7)窗口子菜单。利用窗口子菜单可显示程序框图或前面板,还可进行VI编辑窗口的显示方式(左右两栏显示、上下两栏显示)选择等。(8)帮助子菜单。点击该菜单显示即时帮助、搜索在线帮助、调查及解释错误、查找范例及网上资源的搜索等。快捷菜单是在前面板或程序框图中右击对象所出现的菜单,又称弹出菜单。多数LabVIEW对象具有选项和命令快捷菜单,快捷菜单上出现的选项取决于选择的对象。数字控件上弹出的快捷菜单将不同于For循环弹出的快捷菜单,如图1.21所示。7878第1章 虚拟仪器测试系统 图1.21 不同对象的快捷菜单797
33、9第1章 虚拟仪器测试系统 许多快捷菜单和主菜单中还包含下拉子菜单,如图1.22所示。快捷菜单要依赖于对象而出现,主菜单不需要依赖于对象出现,主菜单在LabVIEW的编辑窗口(前面板或程序框图)中出现。8080第1章 虚拟仪器测试系统 图1.22 主菜单和快捷菜单中的下拉子菜单8181第1章 虚拟仪器测试系统 1.3.4 数据流编程模式LabVIEW程序是数据流驱动程序执行。当所有需要的输入都存在时,程序框图节点将运行。节点在运行时产生输出端数据并将该数据传送给数据流路径中的下一个节点。数据流经节点的动作决定了程序框图上VI和函数的执行顺序。【例1-1】图1.23为实现x2+2x+1数值运算的
34、程序框图。程序框图从左往右执行,执行次序不由对象的摆放位置决定。加法节点1只有在乘法节点1、2的输出数据都到达其数据输入端时才能执行。8282第1章 虚拟仪器测试系统 图1.23 数值运算举例8383第1章 虚拟仪器测试系统 Visual Basic、C+、JAVA以及绝大多数其它文本编程语言都遵循程序执行的控制流模式。在控制流中,程序元素的先后顺序决定了程序的执行顺序。在LabVIEW中,数据流代替命令的先后顺序决定了程序框图元素的执行顺序,因此可以创建具有并行操作的程序框图。8484第1章 虚拟仪器测试系统【例1-2】并行进行x2+2x+1和sin(x)运算的程序框图如图1.24所示。数据
35、有时候不只是在一条线上流动,数据线可能有分叉。而一个程序上也可能同时有多个数据在不同的线上流动。程序可以被扩展成一张网。一个节点运行完,数据从这个节点输出,会同时被传给所有用到它的其它节点去。一个节点只要它所有的输入都已经准备好了,就会被执行,不需要等待其它节点执行完。这样一来,经常有多个节点同时运行着的,LabVIEW会自动把他们放到不同的线程中去运行。这就是数据流驱动程序的一大特性:自动多线程运行。8585第1章 虚拟仪器测试系统 图1.24 并行进行x2+2x+1和sin(x)运算8686第1章 虚拟仪器测试系统【练习1-1】把摄氏温度转换为华氏温度。目的:熟悉LabVIEW的编辑环境,
36、理解LabVIEW的数据流编程原理。设计:摄氏温度转换为华氏温度的VI。(1)打开一个新的VI。(2)创建前面板,如图1.25所示。8787第1章 虚拟仪器测试系统 图1.25 摄氏温度转换为华氏温度的VI的前面板8888第1章 虚拟仪器测试系统 右击前面板空白处,弹出控件选板。在控件选板上单击【Express】/【数值输入控件】/【数值输入控件】,将其拖放在前面板上。在控件选板上单击【Express】/【数值显示控件】/【数值显示控件】,将其拖放在前面板上。使用标签工具将【数值输入控件】命名为摄氏温度;将【数值显示控件】命名为华氏温度。8989第1章 虚拟仪器测试系统(3)切换到VI的程序框
37、图。(4)创建程序框图。右击程序框图空白处,弹出函数选板。在函数选板上单击【编程】/【数值】/【乘】,将其拖放在程序框图中。在函数选板上单击【编程】/【数值】/【加】,将其拖放在程序框图中。使用连线工具,连接各个节点,如图1.26所示。9090第1章 虚拟仪器测试系统 图1.26 摄氏温度转换为华氏温度的VI的程序框图9191第1章 虚拟仪器测试系统(5)保存VI,并且命名为摄氏温度转换为华氏温度.VI。(6)返回前面板,运行VI。注:LabVIEW数据流编程原理可以通过高亮执行观察程序的执行情况,以便很好的理解。高亮执行将在VI的调试技术中具体介绍。9292第1章 虚拟仪器测试系统 本 章
38、小 结(1)虚拟仪器是一种以计算机和测试模块硬件为基础,以计算机软件为核心所构成的计算机仪器。它可在计算机显示屏幕上虚拟仪器面板,并且由计算机所完成的仪器功能都可由用户软件来定义。(2)虚拟仪器与传统仪器相比具有许多优越性。决定虚拟仪器具有传统仪器不可能具备的特点的根本原因在于“虚拟仪器的关键是软件”。9393第1章 虚拟仪器测试系统(3)虚拟仪器系统由硬件和软件两大部分构成。硬件是虚拟仪器的基础,软件是虚拟仪器的核心。虚拟仪器的硬件通常包括基础硬件平台和外围测试硬件设备,它们共同组成通用仪器硬件平台。虚拟仪器的软件包括操作系统、仪器驱动器和应用软件三个层次。(4)虚拟仪器系统的软件结构由测试管理层、仪器驱动层和应用程序开发层、I/O总线驱动层四个层面构成。9494第1章 虚拟仪器测试系统(5)LabVIEW是一个图形化的编程语言,用 LabVIEW开发的程序简称VI。一个VI由前面板、程序框图和图标/连线板三部分组成。(6)LabVIEW开发环境:两个开发窗口(前面板和程序框图)、三个操作选板(控件选板、函数选板、工具选板)。(7)LabVIEW是数据流编程模式。9595第1章 虚拟仪器测试系统 思考与练习1测试测量仪器的发展至今经过了哪些阶段?2什么是虚拟仪器?它有哪些特点?3简述虚拟仪器的系统组成。4简述虚拟仪器的软件层次结构。