VI子程序的创建
LV实验1——精选推荐

LV实验1计算机虚拟仪器图形编程LabVIEW实验教材1请记住,VI程序具有三个要素:前⾯板、框图程序和图标/连接器。
(⼀) 创建⼀个VI程序⽬的:创建⼀个VI程序,以便以后作为⼦VI程序使⽤。
创建⼀个VI程序模拟温度测量。
假设传感器输出电压与温度成正⽐。
例如,当温度为70°F时,传感器输出电压为0.7V。
本程序也可以⽤摄⽒温度来代替华⽒温度显⽰。
本程序⽤软件代替了DAQ数据采集卡。
使⽤Demo Read V oltage⼦程序来仿真电压测量,然后把所测得的电压值转换成摄⽒或华⽒温度读数。
前⾯板:1.⽤File菜单的New选项打开⼀个新的前⾯板窗⼝。
2.把温度计指⽰部件放⼊前⾯板窗⼝。
a.在前⾯板窗⼝的空⽩处点击⿏标键,然后从弹出的Numeric⼦模板中选择Thermometer。
b.在⾼亮的⽂本框中输⼊“温度计”,再点击⿏标键按钮。
c.选中该部件,单击⿏标右键,在下拉菜单中选择Visible Items,在其下⼀级菜单中点击Digital Display,使其前⾯出现“√”。
3.在前⾯板窗⼝中放⼊竖直开关控制。
a.在⾯板窗⼝的空⽩处点击⿏标键,然后弹出的Boolean⼦模板中选择Vertical Toggle Switch,在⽂本框中输⼊“温度值单位”,再点击⿏标键或者⼯具栏中的V按钮。
b.使⽤⼯具模板Tools Palette(如果该模板没有出现,则可以在Windows菜单下选择Show Tools Palette命令以显⽰该模板。
)中的标签⼯具A,在开关的“条件真”(true)位置旁边输⼊⾃由标签“摄⽒”,再在”条件假”(false)位置旁边输⼊⾃由标签”华⽒”。
框图程序:1.从Windows菜单下选择Show Block Diagram功能打开框图程序窗⼝。
2.点击框图程序窗⼝的空⽩处,弹出功能模板,从弹出的菜单中选择所需的对象。
本程序⽤到下⾯的对象:Demo Read V oltage VI程序(在Select a VI⼦模板中打开c:/programs Files/National Instruments/Labview 7.1/VI.lib/Tutorial ⼦模板,选中Demo V oltage Read.vi)。
子VI的应用

什么是子VI子VI 是供其他VI 使用的VI ,与子程序类似。
子VI 是层次化和模块化VI 的关键组件,它能使VI 易于调试和维护。
使用子VI 是一种有效的编程技术,因为它允许在不同的场合重复使用相同的代码。
G 编程语言的分层特性就是在一个子VI 中能够调用到另一个子VI 。
下面可用一个表格表明子VI 的作用:程序代码调用子程序function average (in1,in2,out) {out=(in1+in2)/2.0; }main {average (point1,point2,pointavg); }子VI 框图调用子VI 框图编辑图标和连接器:1.图标:每个VI 都有一个默认的图标,显示在前面板和框图窗口的右上角。
默认图标是一个Labview 徽标和一个数字构成的图片,该数字指出自从Labview 启动后已打开新VI 的数量。
使用“编辑图标”可以定制该图标。
如图:选择编辑图标后,便可打开图标编辑器。
编辑器如图:各个控件的作用如图:一个像素一个像素地绘制和擦除绘制直线。
使用限制绘制水平,垂直和对角线从图标象素选取前景色用前景色填充封闭区域使用前景色绘制矩形框。
双击该工具,可以用前景色给图标加边框使用前景色绘制框并用背景色填充。
双击该工具,可以用前景色给图标加边框并选择图标区域,用于移动,复制,删除,或执行其他操作。
双击次此工具并在键在图标中输入文本。
双击该工具可以选择不同字体。
在图标中通常采用小字体。
显示当前前景色和背景色。
分别单击前景和背景将进入彩色选项板,从中可以选编辑好图标以后,就可以看到自己编辑的图标,如图:连接器:连接器是与VI控件和指示器对应的一组端子。
连接器是为了VI建立的输入和输出口,这样VI就可以作为子VI使用。
连接器从输入端子接受数据,并在VI执行完成是将数据传送到输出端子。
在前面板上,每一个端子都与一个具体的控件或指示器相对应。
连接器端子的作用与函数调用时子程序参数列表中的参数类似。
Labview中如何创建子VI

Labview中如何创建子VI
什么是子VI?子VI 是供其他VI 使用的VI,与子程序类似。
子VI 是层次
化和模块化VI 的关键组件,它能使VI 易于调试和维护。
使用子VI 是一种有
效的编程技术,因为它允许在不同的场合重复使用相同的代码。
G 编程语言的分层特性就是在一个子VI 中能够调用到另一个子VI。
下面可用一个表格表明
子VI 的作用:
程序代码调用子程序function average (in1,in2,out)
{
out=(in1+in2)/2.0;
}
main
{
average (point1,point2,pointavg);
}
子VI 框图调用子VI 框图
编辑图标和连接器:
1.图标:每个VI 都有一个默认的图标,显示在前面板和框图窗口的右上角。
默认图标是一个Labview 徽标和一个数字构成的图片,该数字指出自从Labview 启动后已打开新VI 的数量。
使用编辑图标可以定制该图标。
如图:选择编辑图标后,便可打开图标编辑器。
编辑器如图:
各个控件的作用如图:
一个像素一个像素地绘制和擦除绘制直线。
使用限制绘制水平,垂直和对角。
虚拟仪器复习题

1、创建一个VI程序,该程序可以产生一个六行四列的二维数组(数组元素为0到10的随机整数),并把二维数组的前三行、前三列单独提出来,做为一个新的数组。
2、创建一个程序,产生正弦波、三角波、矩形波、锯齿波,并显示出来。
波形的频率和幅度可以改变。
用一个旋钮式开关来选择产生哪种波形。
3、设计一个VI来测量温度(温度是用一个20到40的随机整数来代替),每隔0.25秒测一次,共测定5秒。
在数据采集过程中,VI将在波形Chart上实时地显示测量结果。
采集过程结束后,在Graph上画出温度数据曲线,并且把测量的温度值以文件的形式存盘,存盘格式为:点数时间(S) 温度值(度)1 0.25 782 0.50 854、用0-100的随机数代替摄氏温度,将每500ms采集的温度的变化波形表示出来,并设定上下限,温度高于上限或者低于下限分别点亮对应的指示灯。
并将其上下限也一并在波形中表示出来。
5、(1)创建一个VI子程序,该子程序的功能是用公式节点来产生一个模拟压力,其计算公式是P=80+18.253V+1.244V*V。
V是1到5的随机数。
(2)调用(1)的子程序,每0.5秒测量一次压力,共测量20次,将当前的压力值在波形中表示出来,并求出压力的最大值、最小值和平均值。
6、创建一个VI程序,该VI程序实现的功能是:(1)、创建一个程序使之产生0-10的随机整数,并将其做成子VI。
(2)、调用(1)中所产生的子VI并判断其产生的随机数是否等于0,如果等于0,则点亮指示灯。
同时,另外设置一个开关来控制指示灯的可见性。
(要求每0.2秒产生一个随机数并用一个开关来控制随机数的产生。
)7、在LabVIEW中有哪三种用来创建和运行程序的摸板?它们都有哪些用途?8、移位寄存器的用途是什么?怎么初始化移位寄存器?9、虚拟仪器通用测试平台由哪几个部分组成?它们主要又包括哪些部分?10、VI子程序的连接端口的作用是?如何来定义VI子程序的连接口?11、什么是VISA?VISA有哪些特点?。
LAbview子程序

什么是子VI?子VI是供其他VI使用的VI,与子程序类似。
子VI是层次化和模块化VI 的关键组件,它能使VI易于调试和维护。
使用子VI是一种有效的编程技术,因为它允许在不同的场合重复使用相同的代码。
G编程语言的分层特性就是在一个子VI中能够调用到另一个子VI。
下面可用一个表格表明子VI的作用:程序代码调用子程序function average (in1,in2,out) {out=(in1+in2)/2.0;} main{average(point1,point2,pointavg);}子VI框图调用子VI框图编辑图标和连接器:1.图标:每个VI都有一个默认的图标,显示在前面板和框图窗口的右上角。
默认图标是一个Labview徽标和一个数字构成的图片,该数字指出自从Labview 启动后已打开新VI的数量。
使用“编辑图标”可以定制该图标。
如图:选择编辑图标后,便可打开图标编辑器。
编辑器如图:各个控件的作用如图:一个像素一个像素地绘制和擦除绘制直线。
使用限制绘制水平,垂直和对角线从图标象素选取前景色用前景色填充封闭区域使用前景色绘制矩形框。
双击该工具,可以用前景色给图标加边框使用前景色绘制框并用背景色填充。
双击该工具,可以用前景色给图标加边框并用背景色填充。
选择图标区域,用于移动,复制,删除,或执行其他操作。
双击次此工具并在键盘上按键将立刻删除整个图标。
在图标中输入文本。
双击该工具可以选择不同字体。
在图标中通常采用小字体。
显示当前前景色和背景色。
分别单击前景和背景将进入彩色选项板,从中可以选择新的颜色。
编辑好图标以后,就可以看到自己编辑的图标,如图:连接器:连接器是与VI控件和指示器对应的一组端子。
连接器是为了VI 建立的输入和输出口,这样VI就可以作为子VI使用。
连接器从输入端子接受数据,并在VI执行完成是将数据传送到输出端子。
在前面板上,每一个端子都与一个具体的控件或指示器相对应。
连接器端子的作用与函数调用时子程序参数列表中的参数类似。
VI子程序的创建

VI子程序的打开、运行和改变
• 双击该VI子程序的图标即可以打开其前面板窗口, 然后可以运行或修改子VI。 • 对VI子程序所做的修改只有在存盘后才会起作用。 • 在Help菜单下选择Show Context Help,可打开文 本帮助窗口,将鼠标移到VI子程序节点上时, Help窗口可显示出该VI子程序的每个连接端口的 连线说明。
例:计算两点斜率的VI程序的前面 板和框图程序
• 斜率Slop=(Y1-Y2)/(X1-X2) • 4输入,1个输出
• 每一个VI程序在其前面板窗口和框图程序窗口的右上角均 有一个图标。对于一个VI程序,其默认图标是 • 可使用Icon Editor(图标编辑器)来修改图标,在窗口右 上角的图标上右击鼠标弹出菜单,选择Edit Icon选项即可 激活Icon Editor窗口 。
实验2 子VI创建和程序调试
• 练习4-1:创建一个测量温度的VI程序,该程序显 示温度的单位可以选择为华氏度或摄氏度,并建 立其图标/连接口,使之可被其他VI程序作为子程 序调用。
– 思考:1.温度计显示超过范围,怎么办? – 2.显示更新太快,看不清楚,怎么办?
• 练习4-2:修改练习4-1 创建的Thermometer.vi, 将摄氏温度转换为华氏温度的框图程序部分转换 为VI子程序。
4.2.1 图标编辑
4.2.2 连接口的创建
• 连接口是VI程序的数据的输入输出接口。 • 根据该VI程序所需要的输入输出参数的个数来确定连接口 的端口数,并确定前面板控制器和指示器与这些端口的对 应关系。 • 在前面板窗口右上角的图标方框上弹出菜单,选择Show Connector选项来定义连接口。注意,在框图程序窗口的 图标方框上弹出的菜单没有此选项。
LabView上机实验指导书1

实验1 LabVIEW编程环境与基本操作实验一、实验目的●了解LabVIEW8的编程环境;●掌握LabVIEW的基本操作方法,并编制简单的程序;●学习建立子程序的过程。
二、实验设备安装有LabVIEW8的计算机。
三、LabVIEW介绍LabVIEW(Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器工作平台)是美国NI(National Instrument)公司推出的一种基于G语言(Graphics Language,图形化编程语言)的虚拟仪器软件开发工具,是目前国际上应用最广的虚拟仪器开发环境之一,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,并适用于Windows、Macintosh、UNIX等多种操作系统平台。
与传统程序语言不同,LabVIEW采用强大的图形化语言(G语言)编程,面向测试工程师而非专业程序员,编程方便,人机交互界面直观、友好。
设计者可以象搭积木一样,轻松组建一个测量系统和构造自己的仪器面板,而无需进行任何繁琐的计算机代码的编写。
LabV1EW软件工具的特点可归纳为:●图形化的编程方式,设计者无须写任何文本格式的代码,是真正的工程师的语言。
●提供了丰富的数据采集、分析及存储的库函数。
●提供了传统的程序调试手段,如设置断点、单步运行,同时提供了独到的高亮执行工具,使程序动画式运行,利于设计者观察程序运行的细节,使程序的调试和开发更为便捷。
●32位的编译器编译生成32位的编译程序,保证用户数据采集、测试和测量方案的高速执行。
●囊括了DAQ、GPIB、PXI、VXI、RS-232/485在内的各种仪器通信总线标准的所有功能函数,让不懂总线标准的开发者也能够驱动不同总线标准接口设备与仪器。
●提供大量与外部代码或软件进行连接的机制,如DLL(动态链接库)、DDE、ActiveX等。
●强大的Internet功能,支持常用网络协议,方便网络、远程测控仪器的开发。
简述vi的使用方法

简述vi的使用方法
vi是一个在Linux系统下的标准编辑器。
虽然命令繁多复杂,但熟练掌握后发现其功能和效率是其他图形界面编辑器无法比拟的。
以下是Vi的基本使用方法:
1.启动Vi:在终端输入命令vi,后面接着输入想要创建或编辑的文件名,即可进入Vi编辑器。
2.进入命令模式(command mode):控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode 下,或者到 last line mode。
3.切换到插入模式(Insert mode):在命令模式下按一下字母“i”即可进入插入模式,这时就可以开始输入文字了。
4.保存文件:在命令模式下输入:wq即可!
此外,Vi的命令繁多,建议查阅相关书籍或咨询专业人士。
北信科测控技术与仪器系虚拟仪器期末考试考点总结范文

北信科测控技术与仪器系虚拟仪器期末考试考点总结范文简答:1.虚拟仪器程序调试方法主要有哪些答:1、设置执行程序为高亮方式,程序执行前点击高亮按钮,则运行过程会以高亮形式显示数据流。
2、单步执行方式:如果要使框图程序一个节点一个节点则按下单步单步按行钮就会闪烁,指示它将被执行,再次点击单步按钮,程序将会变成连续运行。
3、探针,从工具模板中选择探针工具,将探针工具置于某根连线上可以用来查看运行过程中数据流在该连线时的数据4、断点使用断点工具可以在程序的某一点中止程序执行,用探针或单步方式查看数据。
2、简要叙述局部变量和全局变量的使用特点和区别。
答:通过局部变量或全局变量,可以实现在程序框图中的多个地方读写同一个控件。
局部变量只能在同一程序内部使用,每个局部变量都对应前面板上的一个控件,一个控件可以创建多个局部变量。
读写局部变量等同于读写相应控件。
通过全局变量可以在不同的VI之间进行数据交换,一个全局变量的VI文件中可以包含多个不同数据类型的全局变量。
LabVIEW中的全局变量是以独立的VI文件形式存在的,这个VI文件只有前面板,没有程序框图不能进行编程。
3、简要介绍For循环和While循环的自动索引功能。
答:For循环和While循环可以自动地在数组的上下限范围内编索引和进行累计。
这些功能称为自动索引。
在启动自动索引功能以后,当把某个外部节点的任何一维元素连接到循环边框的某个输入通道时,该数组的各个元素就将按顺序一个一个地输入到循环中。
循环会对一维数组中的标量元素,或者二维数组中的一维数组等编制索引。
在输出通道也要执行同样的工作――数组元素按顺序进入一维数组,一维数组进入二维数组,依此类推。
4、For循环和While循环的区别是什么?使用中它们各自适用于什么场合答:For循环规定了循环次数,其条件选择是根据计数器计数次数是否达到循环次数而决定结束循环的条件;而While循环不规定循环次数,其条件选择是根据选择器端子的条件是否得以满足而决定结束循环的条件。
第14章LabVIEW中子VI的设置及

14.7 VI调用
对子VI的调用和使用,主要是在程序框图中直接调用。这种方法 也是最常用,应用最方便、最广泛的一种。
14.8 VI层次结构
当一个复杂的程序调用多个子VI后,某一个程序执行的错误和进 度都不好调试。所以LabVEIW软件提供了一个良好的工具,就是 层次化结构。它能很好地观察程序所有涉及的VI和布局层次。通 过“查看”|“VI层次结构”命令打开,如图14.7所示。
14.1 子VI的概念
子VI是一种用来被其他程序调用的程序,也可以说它是模块的一 个小VI程序。运用它的最大好处是能方便地对同一段程序调用多 次而不需要重复编程,也为以后的程序升级和维护提供了方便。 可将新创建的VI用于另一个VI。一个VI被其他VI在程序框图中调 用,则称该VI为子VI。子VI可重复调用。要创建一个子VI,需先 为子VI创建连线板和图标。
14.9 小结
本章对子VI的设置进行了讲解,这也是编程中经常用到的一种方 法。子VI是对一些复杂的程序进行模块化、功能化的方法。进行 子VI的设置,可以对一个程序在不同的地方多次调用,省去了编 程中重复的麻烦。下一章将对编程中可能用到的其他技巧进行讲 解。
14.10 练习题
什么是子VI?它和VI有什么区别? 怎样设置一个VI的显示图标? 在子VI运行中要显示出此界面,该如何操作?写出操作过程。 VI层次结构有什么.4 子VI节点设置对话框
右击程序框图上的一个子VI图标,从弹出的快捷菜单中选择设置 子VI节点,可显示该对话框。该对话框中显示的项是VI属性对话 框中项的子集。该对话框可对子VI仅设置当前实例的相关选项。 通过VI属性对话框中子VI执行的相关项,则可设置子VI每个实例 的相关选项。
14.5 保存与调用子VI
在编程完并设置好接线图标后,还要对子VI进行设置,才能保存。 在子VI的设置是一个有调用时的显示设置,这一步操作可以决定 在调用时能否显示此子VI程序和子VI运行的情况。通过“文 件”|“VI属性”命令打开文件的属性设置,如图14.2所示。
LabView 第一部分(2011版) 基础

Test , Measurment and Automate Your world through Virtual Instrumentation.
Virtual Instrumentation
第二章 虚拟仪器开发环境—— LabView
• • • • • • 虚拟仪器开发环境概述 LabView基本概念 创建一个简单的应用 LabView帮助系统 LabView前面板设计 LabView中常用快捷键介绍
LabVIEW的宗旨和目标——创建适合工程师和科学家使用的编程语言。
LabVIEW编程语言的表达机制——图形化编程。 LabVIEW编程语言的运行机制——数据流。
虚拟仪器原理及设计
第二章 LabView——〉虚拟仪器开发环境概述
LabView基本概念
• LabVIEW开发环境提供给我们一个图形化程序架构 • 包含了三个方面的要素: 1. 前面板(front panel) 2. 程序框图(block diagram) 3. 图标和连接器 (Icon/Connector) • 所有的LabVIEW应用程序称为VI (Virtual Instruments )
虚拟仪器原理及设计
第二章 LabView——〉LabView基本概念
LabView基本概念
• 图形化代码(LabVIEW —— Graphical Code) 图形化编程语言的源代码是出现在程序框图上,已 基本上定义出它的三种表述形式: 1. 端子 (Terminals)
端子是除“修饰控件”外的前面版控件在程序框图中的映 射,也是程序框图中传输数据的端口。它类似于文本编程语言 中的参数和常量。端子影射的是控件的类型(控制器、指示器) 及它们所使用的数据类型。
虚拟仪器 ppt 第5章 VI创建、编辑和调试

6、Key Assignment :分配给控件的快捷键
第5章 VI创建、编辑和调试
VI 子程序的基本概念
将一个VI程序作为一个子程序在另一个VI程序中调 用,VI子程序类似与传统程序设计语言中的函数或子程 序。
Function Code Function avaerage (in1,in2,out) { Out =(in1+in2)/2.0; } Call program code
第5章 VI创建、编辑和调试
高亮显示数据流
在程序执行前或正在执行时,单击工具栏上的高亮执行按钮 ,程序就可以在高亮方式下运行,这时可以逼真地显示数 据的流动过程。再次单击此按钮,程序又恢复正常运行。 注意,使用高亮执行方式,将明显降低程序的执行速度。
第5章 VI创建、编辑和调试
查找VI不可执行的原因
修改前面板对象的大小和颜色:
1、大小的修改
2、颜色的修改
前面板对象的位置和排列的设计 :
第5章 VI创建、编辑和调试
前面板对象的显示与隐藏:
第5章 VI创建、编辑和调试
前面板对象快捷键设置:
第5章 VI创建、编辑和调试
VI调试技术
1、查找错误
2、设置执行程序高亮 3、VI程序的单步执行 4、探针 5、断点
第5章 VI创建、编辑和调试
第5章 VI创建、编辑和调试
VI编辑技术
1、创建对象 2、选择对象 3、移动对象 4、复制和删除对象 5、标注对象 6、改变文本字体、大小、形状和颜色 7、排列对象 8、改变对象大小 9、改变对象颜色 10、建立和编辑连线 11、其他编辑技术
第5章 VI创建、编辑和调试
Main { Avaerage (point1,point2,pointavg) }
第二讲创建VI与子VI

1)基于范例的VI
第一步 找到合适的范例
1)基于范例的VI
第二步 打开范例
1)基于范例的VI
另存---用副本替换原文件
第三步 保存到自己的文件夹 第四步 按照自己的计划进行修改与设计
VI的命名
保存VI 时,应使用描述性的名称。描述性的名称便于识 别VI 并了解该如何使用VI,例如, Temperature Monitor.vi和Serial Write &Read.vi。 含义模糊的文件名会造成文件混淆。保存了多个VI后,更 是难以识别。例如, VI#1.vi。 命名时同时要考虑用户是否可能在其它平台上使用该VI, 因此不要使用一些平台上具有特殊用途的符号,例如, \:/?*<> 和#。
关于保存的其他特性及VI的属性设置详见教材的7-5 至 7-6
2)新建→基于模板的VI
新建 基于模板 生成与显示
生成和显示 双击打开
函数选板中选择“统计.VI”
数学—概率与统计—统计 —鼠标左键按住不放,拖至程序图窗口合适位置
函数选板中选择“统计.vi” 选择要输出的统计值—确定
修改程序
方法1:右键单击前 面板或程序框图右上 角的图标并从快捷菜 单中选择编辑图标
1)编辑图标
方法2:双击前面板右上角的图标可将默认图标替 换为创建的自定义图标。
1)编辑图标
方法3: 图标编辑器 --编辑--从文件导入符号
练习:修改自己编辑的 VI的图标
2)设置连线板
要将一个VI 当作子VI 使用,需创建连线板。只在前面板中出现
连线板集合了VI 各个接线端,与VI 前面板中的输入、显 示控件相互呼应,类似文本编程语言中函数调用的参数列表。
LabVIEW概述和VI创建和调试

• 文本程序的执行为控制流方式,即指令执行的顺序按照程 序的编写顺序进行。
•例
§3-2 VI程序的编辑
• 创建对象: – 前面板中用控件模板创建 – 在框图程序的节点上右击鼠标弹出菜单,选择 相应的选项,可以在前面板创建控制器、指示 器。
注:不同软件版本, 界面、窗口的菜单、 工具栏有区别
前面板窗口的菜单和工具栏 包含用来控制VI的命令按钮和状态指示器。
工具栏
排列、分布、叠放次序、 图标/连接口
运行、连续运行、停止、暂停/继续、格式设置
下拉式菜单,包括File文件 、Edit编辑、 operate 操作、 Tools工具、 Browse显示、 Window窗口、 Help帮助
• LabVIEW开发环境包括三个部分:前面板、框图程 序和图标/连接口。
– 前面板主要用于输入量的设置和输出量的显示,它模拟 了真实仪表的面板,包括旋钮、开关、按钮、图表、图 形。用户使用虚拟仪器时所观察到的就是前面板,并在 前面板中执行对仪器的操作。
– 框图程序用图形编程语言编写,可以把它理解成传统程 序的源代码;
(3)程序的调试:正常运行、高亮方式、探针、单步等
例:由一个按钮开关和一个指示灯组成,该VI的功能是:当 按下按钮时,指示灯点亮;当弹起按钮时,指示灯熄灭。
§2-3 LabVIEW的工作环境
• 2.3.1 启动界面 • New VI 创建一个新的VI程序(即虚拟仪器程序,扩展
名为vi) • Open VI 打开一个已有的VI程序 • DAQ Solutions 数据采集系统的通道配置及构建向导 • Search Examples虚拟仪器程序实例 • LabVIEW TutorialLabVIEW多媒体简易教程 • Exit 退出LabVIEW
第5章 创建子VI

5.3.2 选定内容创建成子VI
(5)在图标窗口单击鼠标右键,在快捷菜 单选择显示连线板选项,此时子VI默认的 连线端类型为如图5-14所示状态。 (6)对子VI重命名并保存此子VI。 (7)此时,不能对”端口接线板”的形状 和关联做修改,否则会导致原Vi程序的数 据连线错误。
5.3.2 选定内容创建成子VI
垂直布局
水平布局
包括VI库
在层次结构窗口中显示/隐藏被VI使用的VI库中的程序
包括全局变量
在层次结构窗口中显示/隐藏被VI使用的全局变量
包括自定义类型
在层次结构窗口中显示/隐藏被VI使用的自定义类型
5.5 子VI的调用
所有有子VI的节点都有一个小的箭头, 用于显示或隐藏其下属的子VI。 在VI层次结构窗口中打开编辑菜单的查 找选项,并在查找对话框中输入要搜索的 词,我们就可以搜索指定节点,与输入字 符相匹配的节点会在搜索结果框中显示, 如图5-19所示。
图5-13
对图标进行编辑替换
5.3.2 选定内容创建成子VI
图5-14
对连接器默认值进行修改
5.4 添加子VI至用户库
如果创建的子VI被使用的频率较高,为方 便调用,我们可以把子VI添加进函数选板的 “用户库”中。调用时只需从函数选板的“用 户库”中找到所需要的子VI,拖动此子VI至程 序框图即可完成调用。
本章小结
本章首先介绍了如何编辑VI的图标和如 何进行连接器端口的设置,为了区别不同 的子VI所实现的不同功能,有时需要为不 同的子VI创建不同的图标以便于理解;然 后详细介绍了两种创建子VI的方法(现有 VI创建成子VI和选定内容创建成子VI)并结 合具体实例进行说明。最后介绍了如何将 一个子VI添加至我们库,如何调用子VI以 及VI的层次结构。
labview程序编写的一般步骤

labview程序编写的一般步骤LabVIEW程序编写的一般步骤LabVIEW是一款图形化编程环境,由国家仪器公司(National Instruments)开发,主要用于数据采集、控制系统以及实验室自动化等领域。
本文将介绍LabVIEW程序编写的一般步骤,帮助读者更好地理解和应用该软件。
一、程序设计思路在开始编写LabVIEW程序之前,首先要明确程序的设计思路和目标。
这包括确定程序的输入和输出,以及所需的控制逻辑和算法。
在设计思路阶段,可以使用流程图或文字描述来梳理程序的整体结构和工作流程。
二、创建VI(Virtual Instrument)VI是LabVIEW的基本单元,类似于函数或子程序。
创建VI的步骤如下:1. 打开LabVIEW软件,选择新建项目(New Project),创建一个新的项目文件夹。
2. 在项目文件夹中,右键点击“我的计算机”,选择“新建VI”,创建一个新的VI文件。
3. 在VI编辑器中,可以添加控件和指示器,定义输入和输出,以及编写程序逻辑。
可以通过拖拽控件和指示器来构建程序的界面。
三、添加控件和指示器控件用于接收用户的输入,指示器用于显示程序的输出。
LabVIEW 提供了丰富的控件和指示器库,可以根据需要选择合适的控件和指示器。
1. 在VI编辑器中,点击控件面板,可以在右侧的工具栏中选择所需的控件。
2. 将选定的控件拖拽到控件面板上,可以通过属性窗口对控件进行设置和定制。
3. 同样地,可以添加指示器到前面板上,用于显示程序的输出结果。
四、编写程序逻辑LabVIEW使用数据流图来表示程序的流程和逻辑。
在VI编辑器中,可以通过连接控件和指示器之间的数据线来构建程序的数据流。
1. 从控件面板上拖拽控件到数据流图中,作为输入数据。
2. 添加数据处理节点,如加法、乘法、逻辑运算等,对输入进行处理。
3. 将处理结果连接到指示器,以显示输出结果。
五、调试和测试在编写完程序后,需要对其进行调试和测试,以确保程序的正确性和稳定性。
6.创建VI和子VI

创建VI 和子VIVI 可作为用户界面,也可以是程序中一项常用操作。
了解如何创建前面板和程序框图后,即可开始创建VI 和子VI 、将VI 归类或创建独立的应用程序和共享库。
关于创建VI 和子VI 的范例,见labview\examples\general 目录。
查找相关范例概念通过本书学习LabVIEW 的概念。
关于使用LabVIEW 的分步指导见详解。
范例和VI 模板选择 帮助»查找范例打开NI 范例搜索器,从而在创建新VI 之前先搜索符合需要的VI 范例。
如未找到合适的VI 范例,可在新建对话框中打开VI 模板,模板中包含函数选板中一些内置VI 和函数。
创建VI 模板创建自定义的模板VI ,这样,每次进行相似操作时,就不必在前面板和程序框图上添加相似的控件。
创建VI 后,将其保存为模板,即创建了一个自定义的VI 模板。
模板可作为子VI 添加至另一个VI 模板中。
如需将模板添加为子VI ,打开VI 模板,将该VI 前面板或程序框图右上角的VI 图标拖放到顶层VI 的程序框图中。
如基于模板创建的VI 中含有模板子VI ,保存该VI 时,LabVIEW 会提示将每一个模板子VI 保存为VI 。
其它文件在新建对话框中的新建列表上选择其它文件,可创建运行时菜单、自定义控件、全局变量和项目库。
使用内置VI 和函数LabVIEW 包含多个用于创建特定应用程序的内置VI 和函数,例如,数据采集VI 和函数、访问其它VI 的VI 、以及与其它应用程序通信的VI 。
将这些VI 作为子VI 在应用程序中使用,可缩短开发时间。
在创建新VI 之前,可考虑在函数选板中查找类似的VI 和函数,在现有VI 的基础上创建VI 。
创建子VI可将新创建的VI 用于另一个VI 。
一个VI 被其它VI 在程序框图中调用,则称该VI 为子VI 。
子VI 可重复调用。
要创建一个子VI ,需先为子VI 创建连线板和图标。
子VI 的节点类似于文本编程语言中的子程序调用。
LabView程序设计的一般过程

第5页/共43页
连线 • 流程图上的每一个对象都带有自己的连线端子,连意两个端子间都可连线,连线类似于
普通程序中的赋值。 • 数据单向流动,从源端口向一个或多个目的端口流动。 • 不同的线型代表不同的数据类型。下面是一些常用数据类型所对应的线型
变暗,这表示您已经成功地把显示对象和上部端子连接起来。如果 端子是白色,则表示没有连接成功。) c. 重复步骤a 和 b,把底部的端子和容积计连接起来。 d. 用鼠标右键单击联接器,在快捷菜单中选择Show Icon….
26
第27页/共43页
LabVIEW的初步操作
10.选择File»Save ,保存该 VI。 这样这个 VI 就完成了,并也可以作为子 VI 被其他
前面板中编辑图标和联接器。 3. 删除默认图标。使用Select Tool(矩形框),单击并拖动想
要删除的部分,按下<Delete>。也可以通过双击工具框中的阴 影矩形删除图标。
23
第24页/共43页
LabVIEW的初步操作
4. 用 Pencil Tool (铅笔工具)绘制一个温度计。 5. 用 Text Tool(文本工具)创建文本。得到图标将如下图所示。
39
第40页/共43页
作业3
40
第41页/共43页
41
第42页/共43页
感谢您的观看!
42
第43页/共43页
(1)单步(入)执行 (2)单步(跳)执行 (3)单步(出)
12
第13页/共43页
• step into就是单步执行,遇到子函数就进入并且继续单步执行; •
step over是在单步执行时,在函数内遇到子函数时不会进入子 函数内单步执行,而是将子函数整个执行完再停止,也就是把 子函数整个作为一步。 • step out就是单步执行时,用step out就可以执行完程序余下 部分,并返回。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LabVIEW 中怎样获得帮助?
• 1.Help下拉菜单中的”Content and Index”有当前选中对象和整个软 件的帮助文件。 • 2. Help下拉菜单中的”Examples …”有按照功能分类的多个VI程序实 例。 • 3.选中对象(函数、子VI、控件)右击,在弹出菜单中选择”Help”, 即显示该对象的帮助内容
4.3.3 选定部分框图程序来创建VI子程序
§4-3 将一个VI程序作为被调用的子程序
子VI的调用方法: • 在一个VI程序的框图程序中,可以调用其他任何一个带有 图标和连接口的VI程序作为该程序的子VI。 • 在函数模板中选择Select a VI…子模板,输入要调用的子 VI的文件名,将该子VI的图标加入到主VI的框图程序窗口 中,然后对子VI的连接口进行连线。 • 在框图程序中可包含多个相同的VI子程序节点 • 子VI可以调用子VI • 可使用Browse子菜单的Show VI Hierarchy显示本VI程序 的层次结构,和用This VI’s SubVIs显示本程序中有那些 子VI。
图标上右击,在弹出菜单上选择 Representation,弹出数据类型模板
数学运算的优先级
• 没有高级文本语言中的规定,如先乘除后加减等 • 在LabVIEW中VI程序的运行是数据流驱动的,即运 输顺序从输入到输出,从左到右(框图程序一般输 入在右,输出在左)进行。 • 例:(YI-Y2)/(X1-X2) 不能写成 YI-Y2/X1-X2
§4-1 VI子程序的基本概念
• 一个VI程序中可调用另外的VI子程序。 • LabVIEW应用VI程序具有层次化结构。优 点是使VI框图程序的结构更加简洁,程序的 编制、调试、理解和维护更加容易。 • VI子程序(SubVI)类似于传统程序设计语 言中的函数或子程序
VI子程序和文本编程语言的子程序及其调用的对比 以计算两数的平均值的程序为例
• 编程1: (1)创建一个华氏温度转换为摄氏温度的VI子 程序(包括图标);(2)产生-50~+120的随机数, 作为华氏温度并显示,转换为摄氏温度并显示(调用 子VI);(3)根据摄氏温度T,分别点亮3个指示灯, T≥37.5点亮超温报警灯(红色);36≤T<37.5 点亮温 度正常灯(绿色); T<36时点亮温度偏低灯(蓝 色)。(要求500MS产生一个随机数) • 编程2:产生和显示正弦波、三角波、方波和锯齿波4 种波形,频率和幅度可变。
• LabVIEW具有三种用来创建和运行程序的模板:
– 工具(Tools)模板包括了程序的创建、修改和调试时使用的工具; – 控制模板(Controls)主要用于在前面板中添加指示器和控制器; – 函数模板(Functions)则用于创建框图程序,它包括了很多函数 子模板。
• VI程序的创建三个步骤:
实验2 子VI创建和程序调试
• 练习4-1:创建一个测量温度的VI程序,该程序显 示温度的单位可以选择为华氏度或摄氏度,并建 立其图标/连接口,使之可被其他VI程序作为子程 序调用。
– 思考:1.温度计显示超过范围,怎么办? – 2.显示更新太快,看不清楚,怎么办?
• 练习4-2:修改练习4-1 创建的Thermometer.vi, 将摄氏温度转换为华氏温度的框图程序部分转换 为VI子程序。
4.2.1 图标编辑
4.2.2 连接口的创建
• 连接口是VI程序的数据的输入输出接口。 • 根据该VI程序所需要的输入输出参数的个数来确定连接口 的端口数,并确定前面板控制器和指示器与这些端口的对 应关系。 • 在前面板窗口右上角的图标方框上弹出菜单,选择Show Connector选项来定义连接口。注意,在框图程序窗口的 图标方框上弹出的菜单没有此选项。
例:计算两点斜率的VI程序的前面 板和框图程序
• 斜率Slop=(Y1-Y2)/(X1-X2) • 4输入,1个输出
• 每一个VI程序在其前面板窗口和框图程序窗口的右上角均 有一个图标。对于一个VI程序,其默认图标是 • 可使用Icon Editor(图标编辑器)来修改图标,在窗口右 上角的图标上右击鼠标弹出菜单,选择Edit Icon选项即可 激活Icon Editor窗口 。
Y1 Y2 X1 X2 Slop
Y1
1)选择和修改连接口模式
Y2 X1 X2 Slop
2)给控制器和指示器分配端口
使用连线工具可以给前面板的 控制器和指示器分配端口。 ① 在连接口的一个端口上点击 鼠标,工具自动变为连线工 具,该端口变为黑色。 ② 在要分配给该端口的控制器 或指示器上点击鼠标,选中 的控制器或指示器将被虚线 框住,将鼠标移至空白处点 击一下 ③ 对需要指定端口的控制器和 指示器重复上述步骤
– (1)创建前面板、(2)设计框图程序、(3)调试程序
• 控件分为控制器和指示器 • 控制器在框图程序中只能 输出,指示器在框图程序 中只能接收输入 • 控件的控制器属性和指示 器属性可相互转换。操作 方法:选中控件右击,在 弹出的菜单的第3项 “Change to Indicator (或Control)” • 但一般情况不要转换属性
VI子程序的打开、运行和改变
• 双击该VI子程序的图标即可以打开其前面板窗口, 然后可以运行或修改子VI。 • 对VI子程序所做的修改只有在存盘后才会起作用。 • 在Help菜单下选择Show Context Help,可打开文 本帮助窗口,将鼠标移到VI子程序节点上时, Help窗口可显示出该VI子程序的每个连接端口的 连线说明。
Y1 Y2 X1 X2 Slop
• 可以将框图程序的某部分转换为一个VI子程序(SubVI) • 首先用选择工具选定要转换的部分框图程序,然后在Edit菜单 下选择Create SubVI选项,即可以将选定的框图程序转换成 VI子程序。 • LabVIEW自动为新建的VI子程序创建图标/连接口,并用新的 VI子程序图标取代原来选定的框图程序部分 • 存盘,给子VI取名。
– 提示:产生波形可使用函数模板中的分析子模板下的波形发 生器子模板中的函数。波形显示可使用控件模板中的图形子 模板中的控件。
练习4-1 程序
编程4-2 波形产生和显示
• • • • 函数名对应子VI名(图标) 输入参数对应子VI输入端口 输出(返回)参数对应子VI输出端口 函数体(文本行)对应子VI框图程序
§4-2 子VI创建及图标编辑和连接口设定 子VI的创建方法有两种: • 1.任何一个VI都可作为子VI使用,但是需要 编辑该子VI的图标和设定连接口(即端口) • 2. 选定部分框图程序来创建VI子程序 ,自 动产生图标和连接口
ቤተ መጻሕፍቲ ባይዱ《虚拟仪器》-3
第4章 VI子程序的创建
电子科技大学自动化学院 詹惠琴 zhanhq@
第2~3章 内容小结和补充
• LabVIEW是一种图形化编程语言 • LabVIEW程序包括三个部分:前面板、框图程序和图标/ 连接口
– 前面板模拟了真实仪表的面板,主要用于输入量的设置和输出量 的显示,用户在前面板中执行对仪器的操作。 – 框图程序是由节点、端口和连线组成的可执行代码。对框图程序 的设计主要是对节点、数据端口和连线的设计 – 通过图标/连接口是该VI程序的代表,用于其他程序调用该子VI
数字型对象的数据类型
• • • • • • • • • • • • EXT 扩展型 范围(-Inf ~ +Inf) DBL 双精度浮点型 范围(-Inf ~ +Inf) SGL 单精度浮点型 范围(-Inf ~ +Inf) I32 带符号32位整型 范围(-2147483648 ~ 2147483647) I16 带符号16位整型 范围(-32768 ~ 32767) I8 带符号8位整型 范围(-128 ~ 127) U32 无符号32位整型 范围(0~ 4294967295) U16 无符号16位整型 范围(0~ 65535) U8 无符号8位整型 范围(0~ 255) CXT 扩展型复数 范围(无) CDB 双精度复数 范围(无) CSG 单精度复数 范围(无)