资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,LabVIEW,图形化编程与实例应用,第,1,章 绪论,知识点:,虚拟仪器的概念,虚拟仪器的构成,虚拟仪器的前景,图形化编程语言,LabVIEW,简介,本章概述:,本章主要介绍虚拟仪器的概念、构成特点及,LabVIEW,编程语言的特点,重点阐述“软件即是仪器,仪器即是软件”的观点。,LabVIEW,图形化编程与实例应用,虚拟技术、计算机技术与网络技术是信息技术最重要的组成部分,它们被称为,21,世纪科学技术中的三大核心技术。,虚拟仪器,是虚拟技术的一个重要组成部分,它是现代计算机软件技术、通信技术和测量技术高速发展孕育出的一项革命性技术,其导致了传统仪器的结构、概念和设计观点都发生了巨大变革,它的出现使得人类的测试技术进入了一个新的发展纪元。,1-1-1,虚拟仪器的基本概念,1-1,虚拟仪器概述,LabVIEW,图形化编程与实例应用,所谓虚拟仪器,就是在以,PC,为核心的硬件平台上,由用户通过软件进行编程设计,设计出的虚拟仪器面板可以用来模拟仪器并实现其测量功能的一种计算机仪器系统。,虚拟仪器是测试技术与计算机深层次结合的产物,“虚拟”首先体现在仪器的面板是虚拟的,传统仪器面板都是实实在在的,是用户可以用手触摸的“器件”;虚拟仪器的面板是外形与实物相似的“图标”。另外虚拟仪器是通过软件编程来实现仪器的多种测试功能的。,1-1-2,虚拟仪器的构成及分类,LabVIEW,图形化编程与实例应用,1.,硬件平台,虚拟仪器的硬件平台包括计算机和,I/O,接口设备两部分。,图,1-1,虚拟仪器的构成方式,LabVIEW,图形化编程与实例应用,2.,应用软件,虚拟仪器的应用软件由应用程序和,I/O,接口设备驱动程序两大部分构成。,1-1-3,虚拟仪器的发展及特点,1.,虚拟仪器的发展,第一代模拟仪器,第二代分立元件式仪器,第三代数字化仪器,第四代智能仪器,虚拟仪器,2.,虚拟仪器的特点,尽可能采用了通用的硬件,各种仪器的差异主要是软件。,可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。,用户可以根据自己的需要定义和制造各种仪器,研制周期大大缩短。,比传统仪器更开放、灵活,可与网络及周边其他设备互联。,具有良好的性价比。,虚拟仪器区别于传统仪器最大的特点在于:虚拟仪器的关键是软件。,1-2-1,什么是,LabVIEW,1-2,图形化编程语言,LabVIEW,的概述,LabVIEW,图形化编程与实例应用,LabVIEW,是一种图形化的编程语言(又称为“,G”,语言),它是由美国,NI,公司推出的虚拟仪器开发平台,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。,使用,LabVIEW,开发平台编制的程序称为虚拟仪器程序,它包括前面板、流程图以及图标,/,连接器三部分。,1-2-2 LabVIEW,软件的特点,具有图形化的编程方式,是真正面向科学家和工程师的语言。,32bit,的编译器编译生成的程序可保证数据采集、测试方案的高速执行。,提供了大量的虚拟仪器和函数库来帮助编程。,采用传统的调试手段与新颖的高亮显示,更有利于编程人员进行调试。,囊括了各种仪器通信总线标准的所有功能函数,方便了那些不懂总线标准的用户也能够驱动不同的总线标准接口设备与仪器。,强大的网络功能,支持常用网络协议,可以进行网上发布以及远程监控仪器。,LabVIEW,像许多重要的软件一样,它提供了,Windows,、,UNIX,、,Linux,、,Macintosh,的多种版本。,LabVIEW,图形化编程与实例应用,1-2-3,安装,LabVIEW,启动安装程序有以下两种方法:,1.,自启动安装程序,2.,在“资源管理器”中启动安装程序,1-2-4,启动,LabVIEW,虚拟仪器(,Virtual Instrument,),简称,VI,,是现代计算机软件技术、通信技术和测量技术相结合的产物,它使得人类的测试技术进入了一个新的发展纪元。虚拟仪器的出现让人类对传统仪器的结构、概念和设计观点都发生了巨大变化,它将是今后测试仪器发展的主流方向。,在虚拟仪器这一领域内,目前使用较为广泛的计算机语言是图形化编程语言,LabVIEW,。,LabVIEW,建立在易于使用的图形化数据流编程语言“,G”,语言上,“,G”,语言大大简化了科学计算、过程监控和测试软件的开发,并可以在更广泛的领域内得以应用。,“软件即是仪器,仪器即是软件”。,1-3,本章小结,LabVIEW,图形化编程与实例应用,第,2,章,LabVIEW,集成开发环境,知识点:,LabVIEW,的前面板和流程图设计,LabVIEW,的操作模板和主菜单,创建两个,VI,程序,LabVIEW,的程序设计与调试技术,LabVIEW,的数据流编程,LabVIEW,的程序存储与菜单设计,本章概述:,本章主要介绍,LabVIEW,作为一种图形化编程语言,具体应用在虚拟仪器设计时的一些概念和基本特点;介绍了如何使用,LabVIEW,集成开发环境来进行程序设计与调试;通过两个具体示例来说明,LabVIEW,编程的一般步骤;最后介绍了,LabVIEW,程序的存储方式和菜单设计方法。,LabVIEW,图形化编程与实例应用,使用,LabVIEW,开发平台编制的程序称为虚拟仪器程序,简称为,VI,。设计程序主要是在以下两个窗口中进行的:,前面板设计窗口(,Front Panel,),流程图编辑窗口(,Block Diagram,),2-1-1,前面板设计窗口,2-1 LabVIEW,的基本开发平台,LabVIEW,图形化编程与实例应用,随机信号发生器前面板,LabVIEW,图形化编程与实例应用,2-1-2,流程图编辑窗口,流程图提供,VI,的图形化源程序,可理解为传统程序的源代码。在流程图中对,VI,进行编程,以实现程序的输入和输出功能。,流程图由端口、节点、图框和连线构成。,2-2 LabVIEW,的操作模板,2-2-1,工具模板,工具模板为编程者提供了各种用于创建、修改和调试,VI,程序的工具。当从工具模板内选择了任一种工具后,鼠标箭头就会变成该工具特定的形状。,2-2-2,控制模板,1.,数字子模板,数字子模板主要包括各种数字型的控制件和显示件。数字控件的类型可以分为整型、浮点型、双精度型等。,2.,布尔子模板,LabVIEW,图形化编程与实例应用,2-2-3,功能模板,该模板上的每一个顶层图标都表示一个子模板,它们包含了编辑程序代码所需要的,VI,子程序和函数。,1.,数学运算子模板,2.,布尔运算子模板,3.,比较运算子模板,2-3 LabVIEW,的主菜单和工具栏,2-3-1 LabVIEW,的主菜单,2-3-2 LabVIEW,的快捷工具栏,快捷工具栏,2-4-1,两数相加、相减运算,2-4,创建两个,VI,程序,LabVIEW,图形化编程与实例应用,1.,前面板设计,2.,流程图设计,3.,运行程序,2-4-2,虚拟温度计,1.,前面板设计,2.,流程图设计,3.,运行程序,2-5,数据流编程的概念,LabVIEW,编程又称为“数据流”编程,“数据流”是,LabVIEW,的重要组成部分,它是控制虚拟仪器程序,VI,的运行机制。,2-6-1,找出语法错误,2-6,程序调试技巧,LabVIEW,图形化编程与实例应用,如果一个,VI,程序存在语法错误,则流程图编辑窗口的工具栏上的运行按钮会变成一个折断的箭头,它表示程序有错不能被执行。,2-6-2,高亮执行程序,“,高亮执行”功能按钮是,LabVIEW,独有的调试工具。,2-6-3,单步执行与断点,使用断点工具可以在程序的某一地点终止程序继续执行,采用探针或者单步方式查看数据。,2-6-4,探针,用户可以用工具模板上的探针工具来查看程序数据流线上的数据值,首先在工具模板上选择探针工具,再用鼠标单击希望观察的连接线,这时会弹出一个探针显示窗口。,2-7-1 VI,程序的两种存储方式,2-7 VI,程序存储和库管理器,LabVIEW,图形化编程与实例应用,LabVIEW,语言为创建的,VI,程序提供了两种存储方式:文件存储方式和库文件存储方式。,表,2-12 VI,程序存储方式比较,单独的文件存储方式,VI,库文件存储方式,可以将不同的,VI,程序分别保存在不同的子目录里;可以使用系统资源管理器提供的各种工具来管理单独的文件;可以利用专业开发版系统内置的代码管理工具,便于管理和携带,可以将功能相近的,VI,程序存储在同一个库中;可以将,VI,库中的所有文件进行批处理,会比单独文件处理更方便;,VI,库文件节省磁盘空间,因为它对文件进行了适当的压缩;可以使用文件分层管理,2-7-2,保存程序为,VI,库文件,LabVIEW,图形化编程与实例应用,LabVIEW,对库文件的管理、编辑操作是通过,VI,库管理器来完成的。,2-7-3 VI,库管理器,2-8 LabVIEW,的菜单设计,LabVIEW,提供了两种创建和编辑菜单的方法:一是在程序界面设计时完成;另外一种就是使用,LabVIEW,提供的菜单函数在程序运行时完成。,LabVIEW,的菜单函数位于函数功能模板的,Application Control,子模板中。,2-8-1,设计用户菜单,User.rtm,2-8-2,菜单函数模板简介,LabVIEW,的,Menu,菜单函数模板位于功能模板的,Application Control,子模板中,它包含了一些常用的菜单控制函数。,2-9,本章小结,LabVIEW,图形化编程与实例应用,LabVIEW,创建的图形化程序也称为虚拟仪器程序,简称,VI,,主要包含三个组成部分:前面板、流程图、图标和连接器。,LabVIEW,提供了三个模板来实现程序设计,即:工具模板(,Tools Palette,)、控制模板(,Controls Palette,)和功能模板(,Functions Palette,),这些模板集中反映了该软件的功能与特征。,LabVIEW,本身作为一种面向用户的应用程序开发平台,它可以根据用户的需要设计出良好的应用程序界面,前面板美观大方同时突出个性化。,LabVIEW,图形化编程与实例应用,第,3,章 结 构,知识点:,LabVIEW,结构节点的分类、用法及实例,LabVIEW,公式节点、表达式节点的用法,LabVIEW,的全局变量和局部变量,本章概述:,本章主要介绍,LabVIEW,的,6,种结构框图:顺序结构、选择结构、,For,循环、,While,循环、事件结构以及公式节点(附加表达式节点),另外还介绍了,LabVIEW,环境下的全局变量和局部变量的创建与用法。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,3-1,顺序结构,3-1-1,建立顺序结构,3-1-2,顺序结构的应用举例,LabVIEW,提供了,6,种结构框图:顺序结构、选择结构、,For,循环、,While,循环、事件结构以及公式节点(附加表达式节点)。,顺序结构的一个典型应用就是计算程序运行的时间。,3-1-3,顺序结构的弊端,LabVIEW,编程的主要特点是数据流形式,这便于,VI,大量的按照并行方式运行,优化了程序的计算性能。而顺序结构却趋向于中断数据流编程,禁止程序并行操作,顺序结构还掩盖了部分代码,所以用户在编程时应尽量不用或少用顺序结构。,3-2,选择结构,LabVIEW,图形化编程与实例应用,LabVIEW,的,Case,结构类似于传统文本语言编程的,ifThenelse,语句。,Case,结构包含有两个或者更多的子框图,每一个子框图包含一段程序代码,由此对应一个程序分支。,3-2-1,建立选择结构,1.,选择端口的输入值,2.Case,结构的数据通道,3-3 For,循环,LabVIEW,的,For,循环结构类似于以下的传统文本语言编程:,For i=0 to N-1,循环子程序代码,;,3-2-2,选择结构的应用举例,LabVIEW,图形化编程与实例应用,3-3-1,建立,For,循环,3-3-2 For,循环的自动索引,LabVIEW,循环结构的一个最大特点就是在于它使用了自动索引功能。,3-3-3,移位寄存器,For,循环中,如果后一次运算要用到前一次循环的结果时,就需要使用移位寄存器,移位寄存器是循环结构独有的本地变量。,1.,创建移位寄存器,2.,初始化移位寄存器,For,循环位于,Structures,结构子模板中,它包含两个端口:计数端口(输入端口)、重复端口(输出端口)。,3-3-4 For,循环的应用举例,3-4 While,循环,LabVIEW,图形化编程与实例应用,LabVIEW,的,While,循环结构类似于以下的传统文本语言编程:,Do,循环子程序代码,;,While,条件为真,While,循环结构位于功能模板的,Structures,子模板中,是一种无限循环结构,只要满足条件就可以一直循环下去。它包含两个端口:条件端口(输入端口)、重复端口(输出端口)。,3-4-1,建立,While,循环,3-4-2 While,循环的应用举例,3-5,事件结构,LabVIEW,图形化编程与实例应用,事件结构位于,Structures,子模板中,它的外形和,Case,结构非常相似,它包含超时端口和事件数据端口。,3-5-1,建立事件结构,3-5-2,事件结构的应用举例,3-6,公式节点和表达式节点,公式节点(,Formula Node,)是,LabVIEW,编程中非常灵活的一种结构,利用公式节点可以直接输入一个或者多个复杂的公式,而不用创建流程图的很多子程序。它的语言结构类似于,C,语言,还可以加注释,每个语句以分号结束,看起来就像是一段,C,语言代码。,3-6-1,建立公式节点,用户可以在功能模板的两个位置找到公式节点结构,一个是在,Structures,子模板里,另外一个是在,Mathematics,子模板的,Formula,公式子选项板里。,LabVIEW,图形化编程与实例应用,全局变量和局部变量是,LabVIEW,用来传递数据的工具。,3-6-2,公式节点的应用举例,3-7-1,局部变量,3-7,全局变量和局部变量,谈到局部变量,其实早在介绍顺序结构时就已经接触过了,当时是添加顺序局部变量来传递程序初始时间,以便计算程序所执行的时间。,1.,建立局部变量,2.,局部变量的应用举例,3-7-2,全局变量,LabVIEW,的全局变量是一个独立的,VI,,它是一种特殊的程序,没有流程图只有前面板,功能是保存一个或多个全局变量,所以也把全局变量程序称为“容器”。,1.,建立全局变量,2.,全局变量的应用举例,LabVIEW,图形化编程与实例应用,如果用户的应用程序中有全局数组,那么就存在大量的数据复制的危险,因为用户想要在不同的地方对数据进行处理,最终就有许多的数据备份,造成内存的巨大开销和系统资源的浪费。,如果程序中使用了全局变量或者是局部变量,那么在程序运行之前,必须首先要确定它们的初始值是否满足执行的要求,如果不满足的话,就要对它们进行初始化。,3-7-3,使用全局变量和局部变量的注意事项,3-8,本章小结,本章主要介绍了,LabVIEW,对各种结构的定义,包含有顺序结构、选择结构、,For,循环、,While,循环、事件结构以及公式节点(附加表达式节点)、全局变量和局部变量的创建,辅助大量的实例对它们的用法和典型应用进行了详细的阐述,并给出了结构编程过程中需要注意的地方。,LabVIEW,图形化编程与实例应用,第,4,章 子,VI,知识点:,LabVIEW,子,VI,的概念,LabVIEW,子,VI,的构建和使用,LabVIEW,的,VI,属性设置,本章概述:,本章主要介绍了“,G”,语言编程的分层特性,包括如何创建和使用,LabVIEW,的子程序、个性化程序图标以及如何对,LabVIEW,程序的属性进行设置等。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,4-1,子,VI,的概念,子,VI,作为,LabVIEW,编程的层次化和模块化编程的重要组成部分,它的使用可以让整个程序结构变得更加清晰、层次更加分明、程序更加易读和维护。子,VI,程序类似于传统文本语言的子程序,只要对它进行一定的设置,就可以被其他,VI,程序调用。,用,LabVIEW,语言开发程序时,使用自顶向下的设计方法。用户每创建了一个,VI,程序,都可以将它作为高一级程序的子,VI,节点来调用,实现其模块功能。,LabVIEW,程序的图标位于前面板和流程图编辑窗口的右上角,对于每个,VI,程序,,LabVIEW,为它创建一个默认的图标。,4-2,编辑,VI,图标和接口板,4-2-1,建立选择结构,LabVIEW,图形化编程与实例应用,4-2-2,接口板,接口板提供了一组输入端口和输出端口,它们分别与前面板上的控制件或指示器相对应。,4-3,子,VI,的构建和使用,LabVIEW,创建子,VI,的第二种方法是在,VI,程序中选定内容来创建。具体方法是用选择工具框定一部分程序代码,然后在,Edit,菜单中执行“,Create SubVI”,命令,这样选取的代码就会变成系统默认的程序图标,实现子,VI,的创建。,4-3-1 VI,创建子,VI,由一个,VI,创建子,VI,,需要为它创建程序接口板,并可以个性化程序图标。,4-3-2,选定内容创建子,VI,LabVIEW,图形化编程与实例应用,LabVIEW,提供了对程序,VI,的属性进行设置,用户可以有,3,种打开属性设置对话框的方法:按组合键,【Ctrl+I】,、在,File,菜单中执行“,VI Properties”,命令或者在程序图标的快捷菜单上执行“,VI Properties”,命令。,4-4-1 General,属性,4-4-3 Documentation,属性,4-4 VI,属性的设置,4-4-2 Memory Usage,属性,Memory Usage,属性页主要显示当前程序使用系统内存以及占用磁盘容量的大小,它不包含程序当中所用到的子,VI,。,用户可以在这个属性页对程序,VI,进行描述,将程序链接到,HTML,文档或者帮助文档。,4-4-4 Revision History,属性,4-4-5 Security,属性,LabVIEW,图形化编程与实例应用,Window Appearance,属性页用来设定程序运行时的窗口界面。用户可以将程序设置为对话框窗口,这样用户在,VI,运行时就不能打开其他的应用程序了。,4-4-6 Window Appearance,属性,4-4-7 Windows Size,属性,4-4-8 Execution,属性,4-4-9,Printing,属性,4-5,本章小结,本章主要介绍了,LabVIEW,作为一门编程语言,它在开发程序时采用模块化编程的思想,使用自顶向下的设计方法。,LabVIEW,图形化编程语言的强大功能是建立在它的层次特性之上,子,VI,就是一个模块,使用子,VI,能够使程序变得易于调试、维护,更加通用化。子,VI,的创建有两种方法:将,VI,转换为子,VI,或者是在,VI,中选定部分程序代码直接生成子,VI,。另外,用户通过使用图标编辑器可以设置个性化的图标。本章的最后介绍了程序的属性设置,使用它可以设计程序的外观、安全性以及打印属性等。,LabVIEW,图形化编程与实例应用,第,5,章 字符串、数组和簇,知识点:,LabVIEW,的字符串,LabVIEW,的数组和多态性,LabVIEW,的簇,Waveform,波形数据类型,本章概述:,本章主要介绍了“,G”,语言编程的分层特性,包括如何创建和使用,LabVIEW,的子程序、个性化程序图标以及如何对,LabVIEW,程序的属性进行设置等。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,5-1,字符串,字符串是,ASCII,码字符的集合,当用户与,GPIB,和串行设备的通信、读写文本文件以及传递文本信息时,字符串都是非常有用的。,Normal Display,:正常显示。,Codes Display,:显示不可打印字符,也称为,escape,字符,表,5-1,列出了,escape,字符列表。,Password Display,:口令显示,字符将会以“*”来代替。,Hex Display,:十六进制显示,字符将会以十六进制数来显示。,5-1-1,字符串的显示方式,5-1-2,字符串函数子模板,字符串子模板除了包含一般的字符处理函数以外,还包含各种字符常量,以及字符串与数字量、路径的相互转换函数。,5-1-3,字符串应用举例,1.,组合字符串,2.,字符串子集和数值的提取,LabVIEW,图形化编程与实例应用,5-2,数组,LabVIEW,在功能模板的,Array,函数子模板中给出了大量的数组处理函数。,5-2-1,数组的创建,1.,前面板上创建数组,2.,流程图上创建数组,5-2-2,数组函数子模板,Array,数组函数子模板,LabVIEW,图形化编程与实例应用,1.,创建一个自动索引数组,2.,创建二维数组,3.,初始化数组和分离数组,5-2-3,数组应用举例,5-2-4 LabVIEW,的函数多态化,多态化(,Polymorphism,)是,LabVIEW,编程语言的一种强大的函数处理功能,使用它可以给编程人员带来极大的便利,大多数,LabVIEW,函数都是多态化的。,Add,函数的多态化组合,LabVIEW,图形化编程与实例应用,5-3,簇,LabVIEW,的簇函数中最主要的就是构造打包生成簇的“,Bundle”,函数,还有从簇中解包提取簇中元素的“,Unbundle”,函数。它们是根据簇成员的顺序来进行操作的,这也说明了簇内成员顺序排列的重要性。子模板左下角是簇常量,它用于在流程图中创建簇。此外还包含了数组与簇的相互转换函数。,5-3-1,簇的创建和排序,1.,前面板上创建簇,2.,流程图上创建簇,3.,簇的排序,5-3-2,簇函数子模板,簇也可以称为类,它是一种数据类型,类似于,C,语言的结构和,Pascal,语言记录。簇是不同数据类型的集合,它类似于一个容器,可以在里面放置各种数据类型的控制件或者指示器。需要注意的是,同数组一样,向簇结构中放置的对象必须同时都是控制件或者同时都是指示器。,LabVIEW,图形化编程与实例应用,Waveform,波形数据可以看成是由,1D,波形数据(,Y,)、起始时刻(,t0,)和步长(,X,)等成员组成的一个簇。,LabVIEW,为波形数据类型专门在功能模板上建立了一个,Waveform,子模板,这个子模板中包含了各种操作,例如创建、缩放、数学操作以及较高层函数(创建波形、测量和波形文件,I/O,等)。,1.,创建,Waveform,波形数据,2.,使用,Waveform,函数生成正弦波,5-3-3,簇应用举例,1.,创建簇、解包簇,再打包簇,2.,替换簇成员,3.,插接生成簇数组,4.,建立“数组的数组”,5-3-4 Waveform,数据类型,LabVIEW,图形化编程与实例应用,5-4,本章小结,本章依次介绍了,LabVIEW,语言的字符串、数组和簇。字符串是,ASCII,码的集合,它有,4,种显示方式。数组是由一些具有相同数据类型的元素所组成,可分为数值型、布尔型、字符串型等数组。簇则是由不同类型的数据组成的集合。对于数组和簇来说,放置的对象必须同时都是控制件或者都是指示器。多态化是,LabVIEW,的一种函数功能,即可以协调不同格式、维数或者显示的输入数据,大部分,LabVIEW,函数都是多态化的。,Waveform,波形数据类型是,LabVIEW 6i,版本以后新增加的一种非常方便的组件,在数据采集和信号分析中应用广泛。,LabVIEW,图形化编程与实例应用,第,6,章 图形显示,知识点:,LabVIEW,的图形显示组件,LabVIEW,的实时趋势图,LabVIEW,的事后记录图,LabVIEW,的,XY,图形、强度图、数字波形图和三维图,LabVIEW,的其他图形显示,本章概述:,本章主要介绍了,LabVIEW,语言提供的几种图形显示器件,重点介绍实时趋势图和事后记录图的用法和区别,并且介绍了图形显示的一些函数以及特殊图形的显示方法。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,6-1,图形子模板,图形是虚拟仪器的重要组成部分,,LabVIEW,为用户提供了丰富的图形显示功能,在,Graph,图形子模板中提供了许多可供使用的显示控件,图形子模板,LabVIEW,图形化编程与实例应用,6-2,实时趋势图,6-2-1,实时趋势图简介及其组件,1.,标签,Label,和标题,Caption,2.,曲线图注,Plot Legend,3.,刻度图注,Scale Legend,4.,图形操作模板,Graph Palette,5.,数值显示,Digital Display,6.,清除图形,Clear Chart,7.,多图形显示,Stack Plots/Overlay Plots,8.,数据缓冲区长度,Chart History Length,9.,数据更新模式,Updated Mode,LabVIEW,图形化编程与实例应用,Graph,子模板上面一行的第二个图标就是事后记录图,Waveform Graph,。,Waveform Graph,和,Waveform Chart,的大部分组件及其功能都是类似的,特别的是,Waveform Graph,具有光标指示器,利用它可以准确地读出波形曲线上的任何一点数据,便于分析某一时刻的特性值。,1.,光标名,2.X/Y,坐标值,3.,光标控制器,4.,光标样式,5.,锁定按钮,6.,光标移动按钮,6-2-2,实时趋势图的应用举例,1.,用实时趋势图显示两组随机数,2.,温度临界预警器,6-3-1,事后记录图简介及组件,6-3,事后记录图,LabVIEW,图形化编程与实例应用,XY,图形就是通常意义上的笛卡儿图形,描绘,XY Graph,图形首先需要两个数组,X,和,Y,,分别对应于图形的,X,轴和,Y,轴,并且需要将两个数组打包构成一个簇,,X,轴在上,,Y,轴在下。下面通过两个示例来说明,XY Graph,的一般用法。,1.,里萨如图形,2.,描绘同心圆,6-3-2,事后记录图的应用举例,1.,实时趋势图与事后记录图的比较,2.,规格化事后记录图,X,轴的刻度,3.,采用簇数组显示不同长度的数据,6-4 XY,图形,6-5,强度图,强度图形控件提供了一种在二维平面上表现三维数据的方法。例如可以用屏幕色彩的亮度来反映一个二维数组元素值的大小。强度图可分为,Intensity Chart,强度趋势图和,Intensity Graph,强度波形图。,LabVIEW,图形化编程与实例应用,LabVIEW,提供了,Digital Waveform Graph,数字波形图来显示,0,或,1,表示的数字信号。,6-6,数字波形图,6-7,三维图形,3D Surface Graph,:三维表面图。,3D Parametric Graph,:三维参数图。,3D Curve Graph,:三维曲线图。,Digital Waveform Graph,显示数字信号流程图,6-7-1 LabVIEW,的三维图形分类,LabVIEW,图形化编程与实例应用,对三维图形属性的设置有两种方法:一种是利用“,Graph&Sound”/“3D Graph Properties”,子选项板中的属性设置函数;另外可以直接在三维图形的快捷菜单上执行“,CWGraph3D”/“,特性(,P,),”,命令,在弹出的对话框中进行图形、网格、坐标及光照等设置。,1.3D Surface Graph,三维表面图,2.3D Parametric Graph,三维参数图,3.3D Curve Graph,三维曲线图,6-7-2,三维图形的应用示例,6-8 LabVIEW,的其他图形显示,1.Picture.ctl,的灵活运用,2.,极坐标图,Polar Plot Indicator,6-9,本章小结,本章依次介绍了,LabVIEW,语言几种图形显示器件:实时趋势图、事后记录图、,XY,图形、强度图、数字波形图、三维图和其他的特殊图形。对各种图形的用法和区别进行详细的阐述并辅以实例来说明。,LabVIEW,图形化编程与实例应用,第,7,章 文件,I/O,知识点:,LabVIEW,的文件,I/O,简介,LabVIEW,读写文本文件、二进制文件和数据记录文件,LabVIEW,读写波形文件和图像文件,本章概述:,本章主要介绍了,LabVIEW,语言支持的文件输入与输出格式。,LabVIEW,不仅可以像其他的编程语言那样读写,ASCII,码格式的文本文件和二进制文件,还有,LabVIEW,独特的数据记录文件,另外还介绍了如何读写,LabVIEW,的波形文件和图像文件。,LabVIEW,提供了功能强大的文件输入与输出函数子模板,可以方便地满足用户读写文件的要求。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,7-1 LabVIEW,的文件,I/O,简介,文件输入与输出就是要在磁盘文件中保存和读取信息数据,以文件形式存储起来的数据具有“永久性”,数据文件不仅可以与,LabVIEW,语言编写的其他,VI,交换数据,而且可以被其他的程序共享,例如字处理软件、报表程序等。,7-1-1 LabVIEW,支持的文件格式,1.ASCII,码文本格式文件,2.,二进制格式文件,3.,数据记录文件,7-1-2 LabVIEW,的文件,I/O,函数子模板,文件,I/O,操作函数子模板,LabVIEW,图形化编程与实例应用,1.,高层文件,I/O,操作函数,2.,低层文件,I/O,操作函数,7-2-1,写文本文件,7-2,读写文本文件,1.,使用,Write Characters To File.vi,写文本文件,2.,使用,Write File,写文本文件,3.,使用,Write To Spreadsheet File.vi,写电子表格文件,7-2-2,读文本文件,1.,使用,Read Characters From File.vi,读文本文件,2.,使用,Read File,读文本文件,3.,使用,Read From Spreadsheet File.vi,读电子表格文件,7-3-1,写二进制文件,7-3,读写二进制文件,1.,使用,Write To SGL File.vi,写二进制文件,2.,使用,Write File,写二进制文件,LabVIEW,图形化编程与实例应用,7-3-2,读二进制文件,1.,使用,Read From SGL File.vi,读二进制文件,2.,使用,Read File,读二进制文件,7-4-1,写数据记录文件,7-4,读写数据记录文件,写数据记录文件流程图,LabVIEW,图形化编程与实例应用,7-4-2,读数据记录文件,该程序采用低层文件,I/O,操作函数读取上述产生的数据记录文件“,c:datalog.dat”,。,7-5,读写波形文件,该程序分别使用,Write Wavefoms to Files.vi,和,Export Waveforms To Spreadsheet File.vi,来保存波形文件。,7-5-1 LabVIEW,的波形文件,I/O,函数子模板,Waveform File I/O,子选项板,7-5-1,写波形文件,LabVIEW,图形化编程与实例应用,该程序采用,Read Waveform from File.vi,函数读取上述产生的波形数据文件“,c:waveform.dat”,。,7-5-3,读波形文件,7-6,读写图像文件,LabVIEW,同样也可以读写图像文件,其支持的图像文件格式包括以下,3,种格式:,BMP 1,、,4,、,8,、,24,位非压缩图像格式。,PNG,可移动式图像格式。,JPEG,联合图像专家组的图像压缩格式。,图,7-28,读写图像文件流程图,LabVIEW,图形化编程与实例应用,7-7,本章小结,本章主要介绍了,LabVIEW,可以读写的几种文件格式:,ASCII,码格式的文本文件、二进制文件、数据记录文件、波形文件和图像文件。另外还介绍了,LabVIEW,的,File I/O,函数子模板,包含高层文件,I/O,操作函数和低层文件,I/O,操作函数,几乎可以满足所有文件读写的需要。,LabVIEW,保存的数据文件不仅可以与其他的,VI,交换数据,而且可以被其他的程序共享,例如字处理软件、报表程序等。,LabVIEW,图形化编程与实例应用,第,8,章 信号分析与处理,知识点:,Signal Processing,信号分析与处理子模板,Mathematics,数学运算子模板,信号分析与处理示例,本章概述:,本章主要介绍了,LabVIEW,语言的信号分析处理功能与数学运算功能。,LabVIEW,的分析软件库是由上百个信号分析和处理,VI,构成的。这些,VI,位于,LabVIEW,的,Signal Processing,子模板与,Mathematics,子模板,包括信号产生、信号处理、信号统计、曲线拟合等在虚拟仪器中所使用的处理方法。最后给出了一些常用的信号分析与处理示例。,LabVIEW,图形化编程与实例应用,LabVIEW,图形化编程与实例应用,8-1 Signal Processing,子模板,虚拟仪器通常由三个部分构成:信号的获取与采集、信号的分析与处理和结果输出显示。由此可见,信号分析与处理是构成虚拟仪器的重要组成部分。,Signal,信号可定义为一个传载信息的物理量函数。,Information,信息则是反映一个物理系统的状态和特性的预先不知的报导,而一个物理系统的状态和特性是以各种物理量的性质、数量及其相互关系来表达的,因此信号为了能够传载信息而表现为物理量的函数。,8-1-1 Signal Generation,信号产生子选项板,LabVIEW,已经将各种常用的信号函数做成了可以生成正弦波形、三角波形、随机噪声波形等各种仿真信号波形的功能模块,位于,Signal Processing,子模板下的,Signal Generation,子选项中。,1.Sine Wave.vi,函数节点,2.Uniform White Noise.vi,函数节点,LabVIEW,图形化编程与实例应用,8-1-2 Time Domain,时域分析子选项板,LabVIEW,在,Time Domain,时域分析子选项板提供了,11,种时域分析函数,包括卷积、反卷积、互相关、自相关、微积分、延
展开阅读全文