《虚拟仪器技术》PPT课件.ppt

上传人:za****8 文档编号:16175101 上传时间:2020-09-21 格式:PPT 页数:120 大小:2.46MB
返回 下载 相关 举报
《虚拟仪器技术》PPT课件.ppt_第1页
第1页 / 共120页
《虚拟仪器技术》PPT课件.ppt_第2页
第2页 / 共120页
《虚拟仪器技术》PPT课件.ppt_第3页
第3页 / 共120页
点击查看更多>>
资源描述
第9章 虚拟仪器技术,本章重点 1虚拟仪器基本知识 2图形化软件编程平台LabVIEW介绍 3LabVIEW模板(工具模板、控制模板、功能模板) 4LabVIEW的数据类型 5LabVIEW的程序结构 6LabVIEW的显示功能 7LabVIEW编程入门 本章难点 LabVIEW的程序结构控制和显示功能。,9.1 虚拟仪器的基本知识,9.1.1 虚拟仪器的一般概念 所谓虚拟仪器(Virtual Instrument,简称VI),是在计算机硬件平台上,配以I/O接口设备,由用户自行设计虚拟控制面板和测试功能的一种计算机仪器系统。 虚拟仪器是利用计算机显示器的显示功能模拟传统仪器的控制面板,以多种形式表达输出检测结果,利用计算机强大的软件功能实现信号数据的运算、分析、处理,由I/O接口设备完成信号的采集、测量与调理,从而完成各种测试功能的一种计算机仪器系统。,20多年前,美国国家仪器公司NI(NationalInstruments)提出了虚拟仪器(VI)概念,由此引发了传统仪器领域的一场重大变革,使得计算机和网络技术得以长驱直入仪器领域,和仪器技术结合起来,从而开创了“软件即是仪器”的先河。虚拟仪器通过软件将计算机硬件资源与仪器硬件有机的融合为一体,从而把计算机强大的计算处理能力和仪器硬件的测量,控制能力结合在一起,大大缩小了仪器硬件的成本和体积,并通过软件实现对数据的显示、存储以及分析处理。从发展史看,电子测量仪器经历了由模拟仪器、智能仪器到虚拟仪器,,虚拟仪器具有传统独立仪器无法比拟的优势,但它并不否定传统仪器的作用,它们相互交叉又相互补充,相得益彰。在高速度、高带宽和专业测试领域,独立仪器具有无可替代的优势。在中低档测试领域,虚拟仪器可取代一部分独立仪器的工作,但完成复杂环境下的自动化测试是虚拟仪器的拿手好戏,是传统的独立仪器难以胜任的。,9.1.2 虚拟仪器的组成 虚拟仪器由硬件和软件组成 构成虚拟仪器的硬件平台包括两部分: 1计算机:一般为一台PC机或者工作站,它是硬件平台的核心。 2I/O接口设备:主要完成被测输入信号的采集、放大、模/数转换。可根据实际情况采用不同的I/O接口硬件设备,如数据采集卡/板(DAQ)、GPIB总线仪器、VXI总线仪器模块、串口仪器等。虚拟仪器的构成方式主要有五种类型,如图9.1所示。,图9.1 虚拟仪器组成,软件,计算机,(A/D,D/A) 数据采集卡,虚拟仪器,虚拟仪器是利用计算机显示器的显示功能模拟传统仪器的控制面板,以多种形式表达输出检测结果,利用计算机强大的软件功能实现信号数据的运算、分析、处理,由I/O接口设备完成信号的采集、测量与调理,从而完成各种测试功能的一种计算机仪器系统。,虚拟仪器硬件由可由以下部分构成: (1)PCDAQ系统:是以数据采集板、信号调理电路和计算机为仪器硬件平台组成的插卡式虚拟仪器系统。采用PCI或ISA计算机本身的总线,故将数采卡/板 (DAQ) 插入计算机的空槽中即可。 (2)GPIB系统:以GPIB标准总线仪器与计算机为仪器硬件平台组成的虚拟仪器测试系统。 (3)VXI系统:以VXI标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。 (4)PXI系统:以PXI标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。 (5)串口系统:以Serial标准总线仪器与计算机为仪器硬件平台组成的虚拟仪器测试系统。,虚拟仪器软件由两大部分构成。 1应用程序:它包含两个方面的程序: (1)实现虚拟面板功能的前面板软件程序。 (2)定义测试功能的流程图软件程序。 2I/O接口仪器驱动程序:这类程序用来完成特定外部硬件设备的扩展、驱动与通信。 开发虚拟仪器,必须有合适的软件工具。目前已有多种虚拟仪器的软件开发工具。 (1)文本式编程语言:如C、Visual C、Visual Basic、Labwindows/CVI等。 (2)图形化编程语言:如LabVIEW、HPVEE等。 这些软件开发工具为用户设计虚拟仪器应用软件提供了最大限度的方便条件与良好的开发环境。本书要介绍的是LabVIEW图形化编程语言。,波形测量的三种方式:模拟、数字、虚拟,模拟方式,扫描电路+模拟信号 同步,阴极射线示波管(CRT),实时信号处理;上限频率较高;测量精度低;操作复杂,数字方式,扫描电路=数字时间点D/A模拟阶梯波,阴极射线示波管(CRT) 或液晶显示屏,非实时处理;信号可存储;测量精度高;数字显示;操作简单,模拟信号 A/D数字信号 D/A模拟梯形波,虚拟仪器方式,扫描电路=数字时间点,计算机屏幕,LabVIEW程序, 虚拟控制面板,非实时处理;信号可存储;测量精度高;可进行复杂运算和处理;虚拟控制面板数字显示;操作简单,模拟信号A/D数字信号,LabVIEW、采集接口,9.1.3 虚拟仪器的特点 虚拟仪器与传统仪器有着很大差别,传统仪器主要由硬件组成,需要操作者操作面板上的开关旋钮完成测量工作。其测试功能是由具体的电子电路来实现的。而在虚拟仪器中,其测试功能主要有软件完成,其操作面板变成了与实物控件对应的图标。所以,虚拟仪器具有以下特点:,1虚拟仪器的面板是虚拟的 虚拟仪器面板上的各种“控件”与传统仪器面板上的各种“器件”所完成的功能是相同的,它的外形是与实物相像的“图标”。对虚拟仪器的操作只需用鼠标点击相应图标即可,设计虚拟面板的过程就是在前面板窗口中选取、摆放所需的图形控件的过程。所以,虚拟仪器具有良好的人机交互界面,使用LabVIEW图形化编程语言,可在短时间内轻松完成一个美观而又实用的“虚拟仪器前面板”的设计,使整个设计过程变得轻松而有趣。,2虚拟仪器测量功能是由软件编程实现的 在以PC计算机为核心组成的硬件平台支持下,通过软件编程设计来实现仪器的测试功能,而且可以通过不同测试功能的软件模块的组合来实现多种测试功能,因此,虚拟仪器具有很强的扩展功能和数据处理能力。 3开发研制周期短,技术更新速度快。传统仪器的技术更新周期大约是5至10年,而虚拟仪器的更新周期是1至2年。 4软件、硬件具有开放性、模块化、可重复使用的特点。 5通过使用标准接口总线和网卡,极易实现测量自动化、智能化和网络化,9.1.4 虚拟仪器的应用领域 1.应用于电子工程、机算机工程、机械工程、生物工程、物理系、化学工程等工程领域中的测试测量和自动化应用。 2.应用于实验室科学研究 3.可以非常灵活地为教学中的原理设计实验并进行直观的演示。,2001-2007;关键词:LabVIEW 或 虚拟仪器,9.2.1 LabVIEW简介 LabVIEW (Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器工程平台)是美国国家仪器公司(National Instrument Company,NI公司)开发的一种基于G语言(Graphics Language,图形化编程语言) 的虚拟仪器软件开发工具。 LabVIEW是一种用图标代码来代替编程语言创建应用程序的开发工具。它以数据流编程的方法描述程序的执行。LabVIEW用图形语言(图标和连线)代替文本的形式编写程序,它所具有的扩展函数库包括数据采集、GPIB和串口仪器控制、数据显示、分析与存储等内容。为了便于程序的开发调试,LabVIEW还带有传统的开发调试工具,可设置断点、单步执行,也可以激活程序的执行过程,以动画的形式查看数据流的运行情况。,9.2 图形化软件编程平台LabVIEW,LabVIEW具有如下特点: (1)图形化的编程方式,设计者无需写任何文本格式的代码,是真正的工程师的语言。 (2)提供了丰富的数据采集、分析及存储的库函数。 (3)既提供了传统的程序调试手段,如设置断点、单步运行,同时提供有独到的高亮执行工具,使程序动画式运行,利于设计者观察程序运行的细节,使程序的调试和开发更为便捷。 (4)提供大量与外部代码或软件进行连接的机制,诸如DLLs (动态连接库)、DDE (共享库)、ActiveX等。 (5)强大的Internet功能,支持常用网络协议,方便网络、远程测控仪器的开发。,9.2.2 LabVIEW编程环境 以LabVIEW 7 Express为例,介绍LabVIEW系统安装、基本组成、编程环境。 1LabVIEW系统安装 将LabVIEW 7 Express光盘插入CD驱动器后,只需运行安装光盘中的Setup程序,按照屏幕提示,选择必要的安装选项即可完成。为了控制DAQ、VXI、GPIB等硬件设备,在LabVIEW系统安装完成后,还必须安装NI公司提供的仪器驱动程序。,2LabVIEW启动 双击LabVIEW快捷方式图标即可启动LabVIEW。启动后的界面如图9.2所示。界面右侧有4个按钮,每个按钮都包含按钮主体和下拉菜单。单击按钮主体则 弹出相应的对话框,单击右侧下拉按钮则弹出下拉菜单。 当用户单击New VI 按钮右侧下拉按钮,并在下拉菜单中选择Blank VI,LabVIEW会生成一个空VI,空VI包括两个窗口,一个是前面板窗口,用于设计和编辑前面板对象,另一个是框图程序窗口,用于设计和编辑框图程序。,图9.2 LabVIEW 7 Express启动界面,3窗口工具条 在前面板和框图程序窗口,设有编辑对象用的工具条,工具条各图标的功能如表9.2.1所示。,虚拟仪器启动运行按钮。 虚拟仪器连续运行按钮。 中断按钮当执行按钮变为此形状时,表明VI有错误,不能编译运行,单击该按钮,可弹出Error List对话框,提示VI中的错误。, 停止按钮,终止程序运行。 暂停按钮,暂停程序运行。 指示灯按钮,点击该按钮后,在流程图编辑窗口中可以看到数据流的流动动画。 单步(入)按钮,按节点顺序单步执行程序,每单击一次,程序执行一步。, 单步(跳)按钮,单击此按钮,按节点顺序单步执行程序(不进入循环、SubVI内部)。 单步(出)按钮 ,单击此按钮,退出单步执行,进入暂停状态。 对齐列表框单击此按钮,可选择图标的对齐方式。 分布列表框,单击此按钮,可选择图标的分布方。 重新排序列表框 ,为选定对象重新设定在窗口中的前后顺序。, 文字编辑框,用于虚拟仪器设计过程中涉及到的文字的编辑,如选择文字的大小、颜色、字体等。,4窗口主菜单 主菜单栏共有七个子菜单如图9.3所示。,图9.3 窗口主菜单,9.2.3 基本VI简介,图9.4、9.5是一个正弦信号产生器VI的前面板和框图程序,前面板有一个波形显示控件,在框图程序中,有与之对应的图标端口和模拟信号产生VI。,图9.4 正弦信号产生器前面板,图9.5 正弦信号产生器框图程序,VI程序由:前面板(front panel)、框图程序(block diagram)、图标/连接端口(icon/connector)3部分组成。 1.前面板 前面板是用于设置输入数值和观察输出结果的图形化用户界面,前面板中的输入量被称为控制(controls),用来设置和修改VI的输入量。 输出量被称为指示(indicators),用来指示VI程序输出的数据。控制和指示包括各种旋钮、按钮、开关、表头、图标和图形等。为使前面板便于操作和美观,还有一类控件称为 装饰(decoration),其作用是对前面板图标进行编辑和修饰。,2框图程序 框图程序由节点(node)、端口(terminal)和数据连线(wire)组成。 (1)节点是程序的执行元素,相当于文本语言中的语句、函数或子程序。LabVIEW有4种节点类型: 功能函数(functions) 结构控制(strctures)、 代码端口(CIN) 子VI节点。,功能函数是执行各种数学运算、文件输入输出等基本操作的节点,是LabVIEW编译好的机器代码,以图标的形式出现,供用户使用。节点代码不能修改。 结构控制节点被用来实现结构化程序控制命令,如循环控制、条件分支控制和顺序控制等。 代码端口节点是框图程序与用户提供的C语言文本程序的接口。 子VI节点是为编程方便而专门设计的一段子程序,将其封装成功能函数节点的形式供用户调用。与功能函是节点的区别是用户可以修改其节点代码。,(2)端口是数据在框图程序和前面板之间、节点和节点之间传输而经过的端口。 端口有2种类型: 控制和指示端口:用于前面板对象和框图程序交换数据。 节点端口:每个节点都有一个或数个数据端口,用以输入和输出数据。,(3)数据连线代表程序执行过程中的数据流,定义了框图内的数据流动方向。在LabVIEW中用不同的线形和颜色区分不同的数据类型,表9.2.2列出不同数据类型的线形和颜色。,表9.2.2,9.3 LabVIEW模板,9.3.1工具模板(Tools Palette) 工具模板提供了用于创建、编辑和修改前面板和流程图上对象的各种工具。如果想选用某操作工具,只需用鼠标点击该工具图标即可。 工具模板的调用方法:,执行“WindowsShow Tools Palette”操作。 工具模板如图9.6所示。 各图标对应的功能 如表9.2.3所示。,9.3.2控制模板(Controls Palette) 控制模板是LabVIEW为用户设计虚拟面板而提供的,因此它只会在前面板编辑窗口中出现。 控制模板的调用方法: (1) 执行“WindowsShow Controls Palette”操作。 (2) 使用Object Shortcut Menu工具,左击前面板设计窗口中的空白位置。 (3) 用鼠标右键点击窗口的任一空白区域,。 控制模板如图9.7所示。 各图标对应的功能如表9.2.4所示。,图9.7 控制模板,9.3.3功能模板(Functions Palette) LabVIEW将传统仪器上的各种测试功能做成可供直接调用的库函数。并将各个库函数做成图标的形式存放在相应功能的子模板上。由于功能模板是LabVIEW为用户设计流程图而提供的,因此它只会在流程图编辑窗口中出现。 功能模板的调用方法: (1)执行“WindowsShow Functions”操作。 (2)用工具模板上的Object Popup工具,左击流程图编辑窗口的空白位置。 (3)用鼠标右键点击窗口空白区域。 控制模板如图9.8所示。 各图标对应的功能如表9.2.5所示。,图9.8 功能模板,表9.2.5 LabVIEW功能模板的图标及功能,提供程序控制结构命令,例如循环控制(For结构、While结构),以及全局变量和局部变量。,1,2,3,4,5,提供各种字符串操作函数、数值与字符串之 间的转换函数以及字符(串)常数等。,提供数组运算函数、数组转换函数 以及常数数组等。,第9章 虚拟仪器技术,第9章 虚拟仪器技术,第9章 虚拟仪器技术,9.4 LabVIEW数据类型,LabVIEW的数据类型按其特征可分为数字量类型和非数字量类型,并用不同的图标来代表不同的数据类型。 1。数字量数据类型 数字量数据类型可分为浮点数、整数和复数(实部和虚部都是浮点数)3种基本形式。所有数字量数据类型如表3.2.6所示。,表3.2.6 数字量数据类型:,2非数字量数据类型 部分非数字量数据类型如表3.2.7所示。 表3.2.7 非数字量数据类型:,9.5 LabVIEW 程序结构控制,数据流编程: 任何一个函数、子VI或其它程序节点,必须获得所有输入数据后才能运行,这些函数、子VI或其它程序节点必须完全运行完毕后,才能在输出端子上输出数据。,LabVIEW采用结构化数据流图编程,能处理循环、顺序、选择、事件等程序控制的结构框架。结构子模板如图9.9所示,下面主要介绍For Loop、While Loop、Case三种程序结构。,图9.9 结构子模板,9.5.1 For循环 1创建For循环框架 功能模板:FunctionsStructures For Loop,基本For循环由循环框架、重复端口、计数端口组成,如图9.10所示。,图9.10 基本For循环组成,2For循环的工作流程 在开始For循环之前,从计数端口读入循环次数,重复端口输出0值,接下来执行For 循环框内框图代码程序,每执行一次重复端口i值自动加1,循环次数达到设定值后,退出循环。 3For循环的数据通道与自动索引 循环框外面的数据可通过数据通道进入循环框内,同样,循环框内的数据也可通过数据通道传送到循环框外。用连线工具连接循环框内外的数据端口时,在框架上会自动形成方形通道图标,空心图标表明具有自动索引功能,实心图标不能索引,For循环默认为能自动索引,在循环通道弹出菜单中选择Disable Indexing,则变为不能索引。,自动索引是指将循环框外面的数组成员逐个依次进入循环体内,或将循环框内的的数据累加成一个数组输出到循环框外面。使用自动索引功能时,从循环框外面连接到输入通道的一维数组将索引成单个成员,反之,在循环的输出边框,单个元素依次累加成一维数组。 4For循环的移位寄存器功能 用鼠标右击For Loop图标的边框,会弹出For Loop对话框,选择Add Shift Register选项,就添加了一个移位寄存器。它通常以成对的两个小方框出现在结构体的左右边框,右侧小方框将本次循环的执行结果暂存起来,左侧小方框取得上次循环的结果,供本次循环使用。,5For循环的使用 图9.11为计算 N!的前面板和框图程序,图9.11 N!前面板和框图程序,9.5.2 While循环 1创建While循环框架 功能模板:FunctionsStructures While Loop,基本While循环由循环框架、重复端口、条件端口组成,如图9.12所示。,图9.12基本While循环的组成,2While循环的工作流程 While循环执行循环框中的程序时,其循环次数是不固定的,用条件端口控制循环的停止与否。条件端口有两种状态,当使用状态为Stop if True时,若输入值为True,则停止循环;若输入值为False,则继续执行下一次循环。当使用状态为Continue if True时,若输入值为True, 则继续执行下一次循环;若输入值为False,则停止循环。 While循环的自动索引、移位寄存器和重复端口的用法与For循环相同,只是While循环的边框通道默认为不能索引。,9.5.3 选择结构 1创建Case Structure框架 功能模板:FunctionsStructures Case Structure,基本Case Structure由选择框架、选择端口、选择器标签,以及递增/递减按钮组成,如图9.13所示。,图9.13选择结构的组成,2Case Structure的工作流程 用选择结构编程时,将外部控制条件连接至选择端口上,程序运行时选择端口会判断送来的控制条件,引导选择结构执行相应框架中的内容。输入到选择端口的控制条件的数据类型有三种:布尔型、数字型和字符串型,当控制条件为布尔型时,有True和False两种选择框架。当控制条件为数字型时,选择器标签值为整数0、1、2.,选择框架的个数可根据实际需要确定。当控制条件为字符串型时,选择器标签的值为双引号括起来的字符串,选择框架的个数也可根据实际需要确定。,9.6 LabVIEW 图形显示功能,LabVIEW的图形子模板提供了完成各种图形显示功能的控件。这里简单介绍图形子模板中前三种常用图形控件事后记录波形图控件(Waveform Graph)、实时趋势图控件(Waveform Chart)和XY 波形图控件(Waveform Graph)的功能。 9.6.1事后记录波形图控件(Waveform Graph) 1主要功能 Waveform Graph可以显示单个信号波形,也可以同时显示多个信号波形。它的数据输入基本形式是数组或簇,输入数据中包含了所有需要显示的格式化测量数据。该控件显示时是以一次刷新的方式进行的,也就是说将构成数组的全部测量数据一次显示出来。图9.14显示了Waveform Graph的所有组件。,图9.14 Waveform Graph的组件,各组件的功能如下: 标签(Lable):可通过文本编辑工具给控件命名。 坐标设置工具(Scale Legend):将横轴定义为X轴,代表数组中数据的序号,纵轴定义为Y轴,表示要显示测量数据点的数值大小。在默认条件下,X轴初值为0,步长为1,最大刻度范围根据数组长度自动调整,而Y 轴刻度则根据数组中最大与最小值范围自动设定。通过Scale Legend可设置X、Y轴名称、自动量程选择、数据格式、精度、网格线、坐标类型等参数。 波形设置工具(Plot Legend):通过该控件的弹出菜单,可以设定波形曲线的各种属性,如波形的名称、线型和颜色等。 图形控制工具(Graph Palette):此控件由光标选择工具、图形缩放工具和图形移动工具组成,通过图形控制工具,可以在程序运行中放大、缩小、移动所显示波形。,光标控制工具(Cursor Legned):此控件可以移动光标、设置光标名称、颜色、形状、线型等属性,还可以显示光标所在位置的坐标。 2Waveform Graph控件的使用 设计一个程序,测量一个随机信号的电压值并进行滤波处理(以前5点的平均值作为滤波方法),要求共测量50点,同时显示滤波前后信号波形。 根据要求,只要将两组数据组成一个二维数组,再把这个二维数组送入波形显示控件即可。显示结果及框图程序如图9.15所示。,图9.15,随机信号滤波程序,9.6.2实时趋势图控件(Waveform Chart) 1主要功能 实时趋势图控件(Waveform Chart)可以完成信号的动态显示。即每接收到一个数据,就立即显示一个数据,新数据不断淘汰掉旧数据,从而得到连续的波形。因此,这种显示方式非常适用于描述数据动态变化的规律,适用于实时数据的动态观察。图9.16显示了Waveform Chart的所有组件。其中标签(Lable)、坐标设置工具(Scale Legend)、波形设置工具(Plot Legend)、图形控制工具(Graph Palette)与Waveform Graph控件是相同的。不同的是,Waveform Chart的输入是一个双精度浮点数,而Waveform Graph的输入是一个双精度浮点数组。这是由于两者的波形刷新方式和数据组织方法不同造成的。,Waveform Graph控件通常把要显示的数据先收集到一个数组,然后再把这组数据一次性送入控件中进行显示,而Waveform Chart控件是把新的数据连续添加到已有数据的后面,波形是连续向前推进显示的。Waveform Chart控件一次可接收一个点的数据,也可接收一组数据,不过这组数据与Waveform Graph中的数据组是不同的,Waveform Chart的数据组只不过代表一个波形上的几个点,而Waveform Graph的数据组代表的则是整条曲线。,2Waveform Chart的设置 (1)数据存储长度设置 Waveform Chart显示数据的方式是周期性的刷新显示区,并将数据存储在一块缓存区中,这个缓存区的大小默认值是1024。如果需要改变这个值,需要在Chart上弹出菜单并选择 Chart History Length,在弹出对话框中修改波形存储长度。当Chart的横坐标值小于Chart History Length值时,使用滚动条可以显示缓存区中窗口以外的数据。当选择横坐标为自动比例时,滚动条消失,说明数据已被全部显示。 (2)刷新模式设置 Waveform Chart有三种刷新模式,条幅式Strip Chart、示波器式Scope Chart和扫描式Sweet Chart。缺省的刷新模式是条幅式。在Chart弹出菜单中依次选择Advanced Update Mode,可在下级弹出模板中更换刷新模式。,条幅式类似于纸带记录仪的滚动显示模式,每接收到一个新的数据,就显示在图线的右边缘,原有的值依次左移。 示波器式显示模式时每接收到一个新的数据,就把他描绘在上一个数据的右侧,当图线画至右边界时,就擦除这段图线,然后再从左边开始描绘新一条线图。 扫描式与示波器式类似,不同的是数据到达右边界时,不将显示区清空,而是在描绘下一条曲线的同时,清除上一条曲线的一个数据点,并用一条移动的垂直线界定新数据的起点,此线随新数据的到达在显示区内横移。,(3)多波形显示方式 在一个Chart中显示多条曲线时,可以使用同一个波形描绘区,叫做层叠描绘Overlay Plots;或使用不同的描绘区,叫做堆积描绘Stack Plots。在Chart弹出菜单中选择Overlay Plots或Stack Plots可以进行两种布置方式的转换。,9.6.3 XY 波形记录控件(XY Graph) Waveform Graph和Waveform Chart的横坐标都是单调均匀的,它们不能描绘出非均匀采样的数据和某些平面曲线,因此LabVIEW提供了XY Graph波形记录控件。XY Graph及其端口如图9.17所示。 与Waveform Graph相同,XY Graph也是一次性完成波形显示刷新,不同的是XY Graph的输入数据类型是由两组数据打包构成的簇,簇的每一对数据都对应一个显示数据点的X、Y坐标。,图9.17 XY Graph及其端口,9.7 LabVIEW编程入门,本节以虚拟正弦信号产生器为例介绍LabVIEW编程的基本过程。 9.7.1 虚拟正弦波仿真信号生成器功能描述 该正弦波仿真信号发生器可产生正弦信号,指标如 下: 频率范围:1 Hz10 kHz, 可调。 初始相位:0180,可调。 幅值:0.15.0 V,可调。 生成波形的总点数:N = 8512,可选。,9.7.2 创建一个新的VI 9.7.3 设计VI前面板 9.7.3 设计框图程序 9.7.4 运行和调试VI程序 9.7.5 创建VI图标、保存VI 9.7.6 编辑VI,9.7.2 创建一个新的VI,9.7.3 设计VI前面板,前面板应设计五个输入型数字控件。由使 用者键入生成正弦波的频率fx、初始相位、幅值、总采样点数N与采样频率fs。 一个输出显示型图形控件。,9.7.3 设计框图程序,(1)创建正弦信号产生器各节点 在功能模板上按下列操作依次进入各子菜单可找到相应的节点。 FunctionsAll FunctionsAnalyzeSignal ProcassingSignal Generation Sine Wave.vi(正弦波节点) FunctionsAll Functions ClusterBundle(打包节点) NumericDivide(除法节点) Reciprocal(倒数节点),FunctionsAll FunctionsTime & Dialog Wait(ms)(延时节点) FunctionsAll FunctionsStructures Wile Loop(Wile循环结构) (2)编程原理 本VI基本功能是生成正弦波,在LabVIEW中,有多种方法可以产生正弦波,如Sine Wave.vi、Sine Pattern.vi、Simulate Signal.vi等。本例采用 Sine Wave.vi。,图标左侧一列为输入端口,即该函数调用前的参数设置端口,其各自的含义是: samples:生成波形的总点数N(默认值为128)。 amplitude:生成波形的幅值(默认值为1.0)。 f:生成信号的数字频率(默认值为1.0 / 128.0)。 phase in:生成波形的初始相位,单位为度(默认值为0.0)。 reset phase:默认值为True。当为True时,函数以phase in的值作为初始相位。如果该值为False,函数以上一次调用后的phase out输出值为此次波形的初始相位,显然,此时产生的信号波形是连续光滑的。,函数图标的右侧一列为输出端口(即函数调用后的输出参数),其各自的含义是: Sine Wave:数组名。该数组内存放所生成的波形数据。 phase out:当reset phase为True时,该参数无效;当reset phase为False时,该参数作为下一次生成正弦波的初始相位。 error:错误代码。若有错误,则输出错误代码。根据错误代码,查找LabVIEW帮助文件,可以找到与错误代码对应的错误含义。,此VI输入频率参数为数字频率, 数字频率(f)=模拟频率(fx)/采样频率(fs),为 此,用一个除法器完成fx/fs的运算。 波形VI的输出加到打包节点的一个输入端,打包节 点的另外两个输入一个是时间起点,另一个是采样 间隔,采样间隔由倒数节点对采样频率取倒数得 到。打包节点输出的正弦波序列已包含时间起点和 采样间隔信息。此信号序列送到Waveform Graph显 示信号波形。,将上述节点置于Wile Loop框架内,可以形成连续的正 弦波形。Wait是一个以毫秒为单位的延时节点,适当 的延迟可以放慢信号的刷新速度。通过 Stop按钮可退 出循环,停止运行程序。 (3)连线 按上述原理,用连线工具对各端口和节点正确连线, 编制好的框图程序如图9.24所示。,9.7.4 运行和调试VI程序 9.7.5 编辑VI 9.7.6 保存VI 说明:此信号源还不能从计算机输出,若要真正输出信号,必须加数据采集卡(该采集卡带模拟输出功能。在框图程序中加入模拟输出节点,设置相关参数后,可由采集卡的相应端口得到真正 模拟信号。,9.8 信号分析与测量,9.8.1 时域测量,时域分析,读测电压,幅度测量,调幅与解调,自相关分析,电子电压表,9.8.2 频域测量,频率、相位差测量,频谱分析,频谱分析与测量,频谱分析,9.9 数据采集与模拟输出,9.9.1 数据采集基础,一、数据采集系统构成,数据采集系统(DAQ) 传感器和变换器; 信号调理设备; 数据采集卡或装置; 驱动程序; 硬件配置管理软件; 应用软件和计算机,放大、隔离、滤波、激励、线性化、 数字信号处理,二、信号调理,三、测量系统的连接方式,电压信号可分为:接地、浮动两种,测量系统可分为: 差分; 参考地单端; 无参考地单端。,1、接地信号和浮动信号,(1)接地信号,(2)浮动信号,将信号一端与系统地连接(大地、建筑物地线) 信号发生器、电源等,接地信号与数据采集卡是共地的。,一个不与任何地连接的电压信号为浮动信号, 电池、热电偶、变压器、隔离放大器等,(1)差分测量系统,2、测量系统分类,(2)参考地单端测量系统,MUX,CH0,CH1,CH15,AIGND,Vm,(3)无参考地单端测量系统,MUX,CH0,CH1,CH15,AIGND,AISENSE,3、测量系统选择,(1)差分测量系统是最好的选择,(1)差分测量系统是最好的选择 (2)当满足下列条件时,可选择参考地单端测 量系统,输入信号大于1V 连线较短(小于5米) 所有输入信号都与电源共地。,采样频率fs必须至少是被测信号所包含的最高频 率fm的两倍,即:,四、采集定理及应用,fs 2fm,当采样频率过低时,所采样的数据不能争确还原原始信号,发生畸变(混叠)。为避免此情况的发生,通常在模数转换前加抗混叠滤波器。,通常取fs=(5-10)fm,样本数#S=5-10个信号周期。,五、数据采集卡的设置与测试,9.9.2 模拟输入,9.9.2 模拟输出,习题 1什么是虚拟仪器? 2虚拟仪器有哪些特点? 3一个VI有哪几部分组成?各部分的功能是什么? 4前面板有哪几部分组成?各部分的功能是什么? 5框图程序有哪几部分组成?各部分的功能是什么? 6在LabVIEW中有哪几种节点? 7LabVIEW中有几种模板?各模板的功能是什么? 8LabVIEW中数组和簇的功能是什么?两者有什么区别? 9创建一个20个元素的一维随机数数组。 10创建一个20个元素(0、1、2、.19)的二维(4行5列)数组。 11LabVIEW中有几种数据类型?,12基本For循环有哪几部分组成? 13用For循环生成已连续锯齿波(T=5s,分辨率为:1/50)。 14基本While循环有哪几部分组成? 15事后记录波形控件(Waveform Graph)是以什么方式显示波形数据的? 16实时趋势图控件(Waveform Chart)是以什么方式显示波形数据的? 17. Waveform Graph 和Waveform Chart的主要区别是什么? 18 用For循环和Waveform Graph控件编制一个正弦波产生程序,要求:T=0.001ms,每周期100点,显示一个周期。 19用X-Y波形记录控件编制一个李沙育图形演示仪,要求:X信号、Y信号同频率,同幅度;初相能分别调整,调整范围0-3600。,习题答案: 99,910,913,918,919,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!