收藏 分销(赏)

虚拟仪器测试技术.docx

上传人:可**** 文档编号:4224369 上传时间:2024-08-26 格式:DOCX 页数:136 大小:3.74MB
下载 相关 举报
虚拟仪器测试技术.docx_第1页
第1页 / 共136页
虚拟仪器测试技术.docx_第2页
第2页 / 共136页
虚拟仪器测试技术.docx_第3页
第3页 / 共136页
虚拟仪器测试技术.docx_第4页
第4页 / 共136页
虚拟仪器测试技术.docx_第5页
第5页 / 共136页
点击查看更多>>
资源描述

1、5da90edb7a66bed58d038de5e3324ffb.docx-屈有安目录单元1 配置虚拟仪器软件与硬件31.1 演示虚拟示波器和电压表31.2什么是虚拟仪器41.3配置虚拟仪器的硬件平台5单元2 创建和编辑、调试VI92.1 LABVIEW的基本开发平台92.4创建一个简单的VI程序152.5VI编辑和调试技术162.6创建子VI202.7调用子VI25单元3 结构控制程序设计273.1 While loop结构与chart图表273.1.1While loop结构273.1.2波形图指示器283.2移位寄存器(Shift Register)333.3 For loop373.4

2、 分支(Case)结构393.4顺序结构(Sequence Structure)443.5公式节点(Formula Node)47单元4 数组(array)和图形(graphs)程序设计504.1数组(array)504.1.1 创建数组及自动索引数组504.1.2 数组函数564.2簇(cluster)604.2.1创建簇控制和显示簇604.2.2 使用簇与子VI传递数据614.2.3按名称捆绑与分解簇624.2.4数组和簇的互换634.2.5error in簇 和error out簇634.2.6波形图(Waveform)634.3图形644.3.1Graph控件654.3.2 Chart

3、独有控件654.3.3XY图形控件(XY Graph)674.3.4强度图形控件(Intensity Graph)684.3.5数字波形图控件(Digital Waveform Graph)68单元5 字符串和文件程序设计705.1字符串705.2文件的输入/输出(I/O)725.2.1文件 I/O函数725.2. 将数据写入电子表格文件73单元6数据采集 (Data Acquisition)806.1基于了LABVIEW的数据采集卡系统总体结构806.2数据采集设备的设置与测试816.3采集模拟信号856.3.1 A/D转换866.3.2模拟输入参数说明876.3.4在DAQmx中创建应用程

4、序88虚拟测试技术实验习题集98Excercise1:INTRODUCTION TO LABVIEW98Excercise2:CREATE A SIMPLE LABVIEW VI99Excercise3 Create a sub vi100Exercise 4 LOOP AND CHARTS101Exercise 5 ARRAY AND INDICATORS104Exercise 6 CASE AND SEQUENCE STRUCTURE108单元1 配置虚拟仪器软件与硬件1.1 演示虚拟示波器和电压表虚拟仪器(virtual instrument)是基于计算机的仪器。或者说虚拟仪器技术就是用

5、计算机来做测量的技术。那么计算机能做测量吗?下面先看一个两个演示例子。例1:虚拟示波器。图1-1虚拟示波器前面板例2:虚拟数字电压表图1-2虚拟数字电压表前面板上述例子说明:用计算机来做测量是可行的。1.2什么是虚拟仪器虚拟仪器(virtual instrumention)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装 入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依

6、托,实现各种仪器功能。虚拟仪器主要是指这种方式。下面的框图反映了常见的虚拟仪器方案。实际上,所有测试仪器可概括为三大功能模块组成:数据采集、数据测试和分析、结果输出与显示。其中数据分析和结果输出完全可由基于计算机的软件系统来完成,因此只要另外提供一定的数据采集硬件,就可构成基于计算机组成的测量测试仪器。虚拟仪器的主要特点有:1) 尽可能采用了通用的硬件,各种仪器的差异主要是软件。 2) 可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。3) 用户可以根据自己的需要定义和制造各种仪器。注意:这里所指的虚拟仪器和EDA仿真软件中的虚拟仪器概念完全不同,它可以完全替代传统台式测

7、量测试仪器实现对真实信号的测量。而EDA仿真软件中的虚拟仪器是纯软件的、仿真的,不能测量真实的信号。1.3配置虚拟仪器的硬件平台虚拟仪器由通用仪器的硬件平台和应用软件两部分组成。一、 硬件平台虚拟仪器的硬件平台包括计算机和I/O接口设备两部分。计算机是硬件平台的核心。I/O接口设备主要完成待测输入信号的采集、放大、和A/D转换等。根据I/O接口设备的不同总线形式,虚拟仪器主要分为以下六种类型;1. PC-DAQ插卡式虚拟仪器它是以数据采集卡、信号条理电路以及计算机为硬件平台组成的插卡式虚拟仪器系统。这种系统采用PCI计算机总线,只要将数据采集卡插入计算机主板的空槽中即可以使用。插卡式虚拟仪器的

8、组成原理框图NI公司的M系列数据采集卡2. GPIB仪器它是以GPIB标准仪器总线与计算机为硬件平台组成的仪器测试系统。GPIB仪器组成3. 串口仪器串口仪器是以serial标准总线与计算机为平台组成的仪器测试系统。4. VXI模块它是以VXI标准总线仪器模块与计算机硬件为平台组成的仪器测试系统。VXI虚拟仪器5. PXI模块它是以PXI标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。PXI虚拟仪器6. USB模块它是以USB标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。NI-USB数据采集卡构成的虚拟仪器1.1.4配置虚拟仪器软件虚拟仪器可使用相同的硬件系统,通过不同的软件就可

9、以实现功能完全不同的各种测量测试仪器,软件系统是虚拟仪器的核心,软件可以定义为各种仪器,因此可以说“软件即仪器”。虚拟仪器的应用软件包含应用程序和I/O接口驱动程序两部分构成。1. I/O接口设备驱动程序完成特定外部硬件设备的扩展,驱动以及计算机的通信。一般I/O接口驱动程由提供I/O设备的厂家提供。2.应用程序。在硬件平台具备以后,完成测试功能主要取决于应用程序。*.EXE文件。3.开发工具开发虚拟仪器必须有合适的软件工具,目前虚拟仪器软件开发工具主要有如下几类:文本式编程语言:如 visual C, visual Basic labview windows /CVI等。图形化编辑语言:如l

10、abview (NI公司) VEE(HP公司)等。这些软件开发工具为用户设计虚拟仪器应用软件提供了良好的开发环境。4.LabVIEW概述LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得

11、编程及使用过程都生动有趣。图形化的程序语言,又称为“”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件。它是一个真正的位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。单元2 创建和编辑、调试

12、VI知识点:Labview的前面板和流程图设计Labview的操作模板和主菜单创建两个VI程序LABVIEW的程序调式技术创建子程序本章概述:本章主要介绍LABVIEW的前面板窗口和流程图窗口,工具模板,控制模板和函数模板,通过具体程序设计示例的来说明LABVIEW编程的一般步骤和程序调试技术。最后将介绍子程序的概念以创建子程序的详细过程。2.1 LABVIEW的基本开发平台LabVIEW程序,简称VI,包括前面板(front panel)、流程图两个窗口。前面板前面板是图形用户界面,也就是VI的虚拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制(co

13、ntrol)和显示对象(indicator)。控制对象(输入)显示对象(输出)图2随机信号发生器的前面板板图2-1所示是一个随机信号发生和显示的简单VI是它的前面板,上面有一个显示对象,以曲线的方式显示了所产生的一系列随机数。还有一个控制对象开关,可以启动和停止工作。显然,并非简单地画两个控件就可以运行,在前面板后还有一个与之配套的流程图。流程图流程图提供VI的图形化源程序。在流程图中对VI编程,以控制和操纵定义在前面板上的输入和输出功能。流程图中包括前面板上的控件的连线端子,还有一些前面板上没有,但编程必须有的东西,例如函数、结构和连线等。图是与图对应的流程图。我们可以看到流程图中包括了前面

14、板上的开关和随机数显示器的连线端子,还有一个随机数发生器的函数及程序的循环结构。随机数发生器通过连线将产生的随机信号送到显示控件,为了使它持续工作下去,设置了一个While Loop循环,由开关控制这一循环的结束。函数:随机数发生器结构:循环与前面板控件对应的连线端子与前面板控件对应的连线端子图2随机信号发生器的流程图如果将VI与标准仪器相比较,那么前面板上的东西就是仪器面板上的东西,而流程图上的东西相当于仪器箱内的东西。在许多情况下,使用VI可以仿真标准仪器,不仅在屏幕上出现一个惟妙惟肖的标准仪器面板,而且其功能也与标准仪器相差无几。工具模板(Tools Palette)为了便于创建VI程序

15、,LabVIEW平台上提供了三种模板供编程人员使用,这三种模版分别是:工具(Tools)模板、控件(Controls)模板和函数(Functions)模板。工具模板为编程者提供了各种用于创建、修改和调试VI程序的工具。如果该模板没有出现,则可以在Windows菜单下选择Show Tools Palette命令以显示该模板。当从模板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状。当从Windows菜单下选择了Show Help Window功能后,把工具模板内选定的任一种工具光标放在框图程序的子程序(Sub VI)或图标上,就会显示相应的帮助信息。工具模板图标有如下几种:工具模板图标、名

16、称及功能图标名称功能操作工具使用该工具来操作前面板的控制和显示。使用它向数字或字符串控制中键入值时,工具会变成标签工具的形状。选择工具用于选择、移动或改变对象的大小。当它用于改变对象的连框大小时,会变成相应形状。标签工具用于输入标签文本或者创建自由标签。当创建自由标签时它会变成相应形状。连线工具用于在框图程序上连接对象。如果联机帮助的窗口被打开时,把该工具放在任一条连线上,就会显示相应的数据类型。对象弹出菜单工具用左鼠标键可以弹出对象的弹出式菜单。漫游工具 使用该工具就可以不需要使用滚动条而在窗口中漫游。断点工具 使用该工具在VI的框图对象上设置断点探针工具可以在框图程序内的数据流线上设置探针

17、。程序调试员可以通过控针窗口来观察该数据流线上的数据变化状况。颜色提取工具使用该工具来提取颜色用于编辑其他的对象。颜色工具用来给对象定义颜色。它也显示出对象的前景色和背景色。控件模板(Controls Palette)与上述工具模板不同,控制和功能模板只显示顶层子模板的图标。在这些顶层子模板中包含许多不同的控制或功能子模板。通过这些控制或功能子模板可以找到创建程序所需的面板对象和框图对象。用鼠标点击顶层子模板图标就可以展开对应的控制或函数子模板,只需按下控制或函数子模板左上角的大头针就可以把对这个子模板变成浮动板留在屏幕上。用控制模板可以给前面板添加输入控制和输出显示。每个图标代表一个子模板。

18、如果控制模板不显示,可以用Windows菜单的Show Controls Palette函数打开它,也可以在前面板的空白处,点击鼠标右键,以弹出控制模板。注:只有当打开前面板窗口时才能调用控制模板。控制模板如左图所示,它包括如图所示的几个子模板。控件子模板图标、名称及功能图标名称功能数值子模板包含数值的控制和显示。布尔值子模块逻辑数值的控制和显示。字符串子模板字符串和表格的控制和显示。列表和环(Ring)子模板菜单环和列表栏的控制和显示数组和群子模板复合型数据类型的控制和显示图形子模板显示数据结果的趋势图和曲线图。路径和参考名(Refnum)子模板文件路径和各种标识的控制和显示。控件容器库子模

19、板用于操作OLE、ActiveX等函数。对话框子模板用于输入对话框的显示控制。修饰子模板用于给前面板进行装饰的各种图形对象。自定义用户自定义的控制和显示。调用存储在文件中的控制和显示的接口。函数模板(Functions Palette)函数模板是创建框图程序的工具。该模板上的每一个顶层图标都表示一个子模板。若函数模板不出现,则可以用Windows菜单下的Show Functions Palette函数打开它,也可以在框图程序窗口的空白处点击鼠标右键以弹出函数模板。注:只有打开了框图程序窗口,才能出现函数模板。函数模板如下图所示。函数模板的子模板图标名称函数结构子模板包括程序控制结构命令,例如循

20、环控制等,以及全局变量和局部变量。数值运算子模板包括各种常用的数值运算符,如+、-等;以及各种常见的数值运算式,如+1运算;还包括数制转换、三角函数、对数、复数等运算,以及各种数值常数。布尔逻辑子模板包括各种逻辑运算符以及布尔常数。字符串运算子模板包含各种字符串操作函数、数值与字符串之间的转换函数,以及字符(串)常数等。数组子模板包括数组运算函数、数组转换函数,以及常数数组等。群子模板。包括群的处理函数,以及群常数等。这里的群相当于C语言中的结构。比较子模板包括各种比较运算函数,如大于、小于、等于。时间和对话框子模板包括对话框窗口、时间和出错处理函数等。文件输入/输出子模板包括处理文件输入/输

21、出的程序和函数。仪器控制子模板包括GPIB(488、488.2)、串行、VXI仪器控制的程序和函数,以及VISA的操作功能函数。仪器驱动程序库用于装入各种仪器驱动程序。数据采集子模板包括数据采集硬件的驱动程序,以及信号调理所需的各种函数模块。信号处理子模板包括信号发生、时域及频域分析函数模块。数学模型子模块包括统计、曲线拟合、公式框节点等函数模块,以及数值微分、积分等数值计算工具模块。图形与声音子模块包括3D、OpenGL、声音播放等函数模块。通讯子模板包括TCP、DDE、ActiveX和OLE等函数的处理模块。应用程序控制子模块:包括动态调用VI、标准可执行程序的函数函数。底层接口子模块包括

22、调用动态连接库和CIN节点等函数的处理模块。文档生成子模板示教课程子模板包括LabVIEW示教程序。用户自定义的子VI模板“选择VI子程序”子模板:包括一个对话框,可以选择一个VI程序作为子程序(SUB VI)插入当前程序中。其它几个子模板是LabVIEW的附加Toolkit安装上去的。在LabVIEW完全版中不包括这些子模板。2.4创建一个简单的VI程序我们通过例子来说明如何创建一个VI。例题2-1:把摄氏温度转换为华氏温度。图2-1 例题2-1的前面板 图2-2例题2-1框图程序前面板编辑: 选择 FileNewblank vi ,打开一个新的前面板窗口。选择WindowsLeft and

23、 Right或使用快捷键“CTR+T”,显示前面板和框图程序窗口。创建数字控件,并将这个数字控件标签“label”修改为“deg c”.从ControlsNumeric Controls 中选择 Numeric Control放到前面板中。用tool palette“A”工具,将修改Numeric Control的 “label”项修改为“deg c”。创建数字指示器,并将这个数字控件标签“label”修改为“deg f”流图图的编辑:按“CTR+E”键,切换到框图程序窗口。 从功能模板中选择下列函数图标放置在框图中Multiply 在(functionnumeric)下,将两个数相乘得到它们

24、的乘积。 add在(functionnumeric)下,将两个数相加得到它们的和。 numeric constant 常数,此例中,双击数值型常数,将其值分别修改为1.8,再放置一个数值型常数,将其数值修改为32。 使用连线工具, 按照图2-2框图连线。前面板如图2-1所示。框图程序如图2-2所示。Vi的运行:单击窗口上部的 “run”图标,运行该vi, 得到图2-1的结果.单击窗口上部的 “ continuous run”图标,输出结果可以随输入的变化而变化。单击“pause”可暂时停止程序。单击“abort excution”结束程序的运行。程序的存盘:选择filesave,将此VI命名为

25、C-F.vi保存。选择fileclose,关闭VI。练习2-1结束。2.5 VI编辑和调试技术1VI编辑技术 VI程序具有三个要素:前面板、框图程序和图标/连接器。节点类似于文本语言程序的语句、函数或者子程序。LabVIEW有二种节点类型-函数节点和子VI节点。两者的区别在于:函数节点是LabVIEW以编译好了的机器代码供用户使用的,而子VI节点是以图形语言形式提供给用户的。用户可以访问和修改任一子VI节点的代码,但无法对函数节点进行修改。上面的框图程序所示的VI程序有两个函数函数节点,一个函数使两个数值相加,另一个函数使两数相减。端点是只有一路输入/输出,且方向固定的节点。LabVIEW有三

26、类端点-前面板对象端点、全局与局部变量端点和常量端点。对象端点是数据在框图程序部分和前面板之间传输的接口。一般来说,一个VI的前面板上的对象(控制或显示)都在框图中有一个对象端点与之一一对应。当在前面板创建或删除面板对象时,可以自动创建或删除相应的对象端点。控制对象对应的端点在框图中是用粗框框住的,如例子中的A和B端点。它们只能在VI程序框图中作为数据流源点。显示对象对应的端点在框图中是用细框框住的。如例子中的A+B和A-B端点。它们只能在VI程序框图中作为数据流终点。常量端点永远只能在VI程序框图中作为数据流源点。图框是LabVIEW实现程序结构控制命令的图形表示。如循环控制、条件分支控制和

27、顺序控制等,编程人员可以使用它们控制VI程序的执行方式。代码接口节点(CIN)是框图程序与用户提供的C语言文本程序的接口。连线是端口间的数据通道。它们类似于普通程序中的变量。数据是单向流动的,从源端口向一个或多个目的端口流动。不同的线型代表不同的数据类型。在彩显上,每种数据类型还以不同的颜色予以强调。下面是一些常用数据类型所对应的线型和颜色:数据类型图 形颜色整形数浮点数逻辑量字符串文件路径兰色橙色绿色粉色青色当需要连接两个端点时,在第一个端点上点击连线工具(从工具模板栏调用),然后移动到另一个端点,再点击第二个端点。端点的先后次序不影响数据流动的方向。当把连线工具放在端点上时,该端点区域将会

28、闪烁,表示连线将会接通该端点。当把连线工具从一个端口接到另一个端口时,不需要按住鼠标键。当需要连线转弯时,点击一次鼠标键,即可以正交垂直方向地弯曲连线,按空格键可以改变转角的方向。快速提示:接线头是为了帮助正确连接端口的连线。当把连线工具放到端口上,接线头就会弹出。接线头还有一个黄色小标识框,显示该端口的名字。从框图程序窗口创建前面板对象.用选择和连线工具,你都可以用鼠标右键点击任一节点和端点,然后从弹出菜单中选择“创建常数”,“创建控制”,或“创建显示”等命令。LabVIEW会自动地在被创建的端点与所点击对象之间接好连线。数据流编程控制VI程序的运行方式叫做“数据流”。对一个节点而言,只有当

29、它的所有输入端口上的数据都成为有效数据时,它才能被执行。当节点程序运行完毕后,它把结果数据送给所有的输出端口,使之成为有效数据。并且数据很快从源送到目的端口。如左图所示,这个VI程序把两个输入数值相乘,再把乘积减去50.0。这个程序中,框图程序从左往右执行,这个执行次序不是由于对象的摆放位置,而是由于相减运算函数的一个输入量是相乘函数的运算结果,它只有当相乘运算完成并把结果送到减运算的输入口后才能继续下去。请记住,一个节点(函数)只有当它所有的输入端的数据都成为有效数据后才能被执行,而且只有当它执行完成后,它的所有输出端口上的数据才成为有效。再看另一个程序.你认为哪一个节点函数将先执行是乘法还

30、是除法?在这个例子中,我们无法知道哪一个节点函数首先执行,因为所有输入量几乎同时到达。对于这样一种相互独立的数据流程,如果又必须明确指定节点执行的先后次序,就必须使用顺序(Sequence)结构来明确执行次序。2程序调试技术1) 找出语法错误如果一个VI程序存在语法错误,则在面板工具条上的运行按钮将会变成一个折断的箭头,表示程序不能被执行。这时这个按钮被称作错误列表。点击它,则LabVIEW弹出错误清单窗口,点击其中任何一个所列出的错误,选用Find函数,则出错的对象或端口就会变成高亮。2) 设置执行程序高亮在LabVIEW的工具条上有一个画着灯泡的按钮,这个按钮叫做“高亮执行”按钮上。点击这

31、个按钮使该按钮图标变成高亮形式,再点击运行按钮,VI程序就以较慢的速度运行,没有被执行的代码灰色显示,执行后的代码高亮显示,并显示数据流线上的数据值。这样,你就可以在根据数据的流动状态跟踪程序的执行。3) 断点与单步执行为了查找程序中的逻辑错误,你也许希望框图程序一个节点一个节点地执行。使用断点工具可以在程序的某一地点中止程序执行,用探针或者单步方式查看数据。使用断点工具时,点击你希望设置或者清除断点的地方。断点的显示对于节点或者图框表示为红框,对于连线表示为红点。当VI程序运行到断点被设置处,程序被暂停在将要执行的节点,以闪烁表示。按下单步执行按钮,闪烁的节点被执行,下一个将要执行的节点变为

32、闪烁,指示它将被执行。你也可以点击暂停按钮,这样程序将连续执行直到下一个断点。4) 探针 你可以用探针工具来查看当框图程序流经某一根连接线时的数据值。从Tools工具模板选择探针工具,再用鼠标左建点击你希望放置探针的连接线。这时显示器上会出现一个探针显示窗口。该窗口总是被显示在前面板窗口或框图窗口的上面。在框图中使用选择工具或连线工具,在连线上点击鼠标右键,在连线的弹出式菜单中选择“探针”命令,同样可以为该连线加上一个探针。2.6 子VI在设计G语言中,理解和使用VI的分层特性非常重要。当一个VI创建后,它可以作为一个子VI在高层Vi的框图中使用。一个子VI(sub vi)类似于传统程序设计语

33、言中的函数或子程序,是可以供其他的VI调用的VI。子VI是供其他VI使用的VI,与子程序类似。子VI是层次化和模块化VI的关键组件,它能使VI易于调试和维护。使用子VI是一种有效的编程技术,因为 它允许在不同的场合重复使用相同的代码。G编程语言的分层特性就是在一个子VI中能够调用到另一个子VI。下面可用一个表格表明子VI的作用:程序代码调用子程序function average (in1,in2,out)out=(in1+in2)/2.0;mainaverage (point1,point2,pointavg);子VI框图调用子VI框图先看一个SUB vi 的演示程序。 从例题中可以看出,子程

34、序就相当于一个函数。可以将任何一个定义了图标和联接器的 VI作为另一个 VI的子程序。在流程图中打开 FunctionsSelect a VI. ,就可以选择要调用的子 VI 。2.6.1创建子VI创建子VI主要的工作就是定义它的图标和联接器。每个VI在前面板和流程图窗口的右上角都显示了一个默认的图标。启动图标编辑器的方法是,用鼠标右键单击面板窗口的右上角的默认图标,在弹出菜单中选择 Edit Icon。下图显示了图标编辑器的窗口。可以用窗口左边的各种工具设计像素编辑区中的图标形状。编辑区右侧的一个方框中显示了一个实际大小的图标。图标编辑器的具体使用细节参阅有关资料。图标编辑器窗口联接器是 V

35、I 数据的输入输出接口。如果用面板控制对象或者显示对象从子 VI 中输出或者输入数据,那么这些对象都需要在联接器面板中有一个连线端子。您可以通过选择 VI的端子数并为每个端子指定对应的前面板对象以定义联接器。定义联接器的方法是,用鼠标右键单击面板窗口中的图标窗口,在快捷菜单中选择 Show Connector。联接器图标会取代面板窗口右上角的图标。LabVIEW 自动选择的端子连接模式是控制对象的端子位于联接器窗口的左边,显示对象的端子位于联接器窗口右边。选择的端子数取决于前面板中控制对象和显示对象的个数。联接器中的各个矩形表示各个端子所在的区域,可以用它们从 VI 中输入或者输出数据。如果必

36、要,也可以选择另外一种端子连接模式。方法是在图标上单击鼠标右键单出快捷菜单,选择 Show Connector,再次弹出快捷菜单,选择Patterns。下面我们通过一个练习说明具体操作。例题:目的:创建一个VI程序,以便以后作为子VI程序使用。任务描述:创建一个VI程序模拟温度测量。假设传感器输出电压与温度成正比。例如,当温度为70F时,传感器输出电压为0.7V。本程序也可以用摄氏温度来代替华氏温度显示。本程序用软件代替了DAQ数据采集卡。使用随机函数仿真温度的电压,然后把所测得的电压值转换成摄氏或华氏温度读数。图 前面板 流程图STEP1:编辑VI前面板:1. 用File菜单的New选项打开

37、一个新的前面板窗口。2. 把温度计指示部件放入前面板窗口。1) 在前面板窗口的空白处点击鼠标键,然后从弹出的Numeric子模板中选择Thermometer。2) 在高亮的文本框中输入“温度计”,再点击鼠标键按钮。3. 重新设定温度计的标尺范围为0.0到100.0。使用标签工具A,双击温度计标尺的10.0,输入100.0,再点击鼠标键或者工具栏中的V按钮。4. 在前面板窗口中放入竖直开关控制。1) 在面板窗口的空白处点击鼠标键,然后弹出的Boolean子模板中选择Vertical Switch,在文本框中输入“温度值单位”,再点击鼠标键或者工具栏中的V按钮。2) 使用标签工具A,在开关的“条件

38、真”(true)位置旁边输入自由标签“摄氏”,再在“条件假”(false)位置旁边输入自由标签“华氏”。框图程序:1. 从Windows菜单下选择Show Diagram函数打开框图程序窗口。2. 点击框图程序窗口的空白处,弹出函数模板,从弹出的菜单中选择所需的对象。本程序用到下面的对象;Random Number (0-1)产生0-1随机数函数 (Numeric子模板).产生随机数。模拟温度传感器输出的温度信号电压。Multiply(乘法)函数(Numeric子模板)。在本例中,将读取电压值乘以100.00,以获得华氏温度。Subtract(减法)函数(Numeric子模板)。在本例中,从华

39、氏温度中减去32.0,以转换成摄氏温度。Select(选择)函数(Comparison子模板)。取决于温标选择开关的值。该函数输出华氏温度(当选择开关为false)或者摄氏温度(选择开关为True)数值。数值常数。用连线工具,点击你希望连接一个数值常数的对象,并选择Create Constant函数。若要修改常数值,用标签工具双点数值,再写入新的数值。字符串常量。用连线工具,点击你希望连接字符串常量的对象,再选择Create Constant函数。要输入字符串,用标签工具双击字符串,再输入新的字符串。3. 使用移位工具(Positioning tool),把图标移至图示的位置,再用连线工具连接

40、起来。请记住,如果要显示图标接线端口,则点击图标,再从弹出菜单中选择Show Terminals功能。也可以从Help菜单中选择Show Help功能以打开帮助信息窗口。Demo Read Voltage VI子程序模拟从数据采集卡的0通道读取电压,我们的程序再将读数乘以100.0转换成华氏温度读 数,或者再把华氏温度转换成摄氏温度。4. 选择前面板窗口,使之变成当前窗口,并运行VI程序。点击连续运行按钮,便程序运行于连续运行模式。5. 再点击连续运行按钮,关闭连续运行模式。STEP2 :创建图标Temp此图标可以将现程序作为子程序在其他程序中调用。创建方法如下:a. 在面板窗口的右上角的图标

41、框中点击鼠标,从弹出菜单中选择Edit Icon功能。b. 双点选择工具,并按下Delete键,消除缺省的图标图案。c. 用画图工具画出温度计的图标。注意,在用鼠标画线时按下键,则可以画出水平或垂直方向的连线。使用文本工具写入文字,双击文本工具把字体换成Small Font。当图标创建完成后,点击OK以关闭图标编辑。生成的图标在面板窗口的右上角。STEP3:创建联接器端口:a. 点击右上角的图标面板,从弹出菜单中选择Show Connector函数。LabVIEW将会根据控制和显示的数量选择一种联接器端口模式。在本例中,只有两个端口,一个是竖直开关,另一个是温度指示。b. 把联接器端口定义给开

42、关和温度指示。c. 使用连线工具,在左边的联接器端口框内按鼠标键,则端口将会变黑。再点击开关控制件,一个闪烁的虚线框将包围住该开关。d. 现在再点击右边的联接器端口框,使它变黑。再点击温度指示部件,一个闪烁的虚线框将包围住温度指示部件,这即表示着右边的联接器端口对应温度指示部件的数据输入。e. 如果再点击空白外,则虚线框将消失,而前面所选择的联接器端口将变暗,表示你已经将对象部件定义到各个联接器端口。注意:LabVIEW的惯例是前面板上控制的联接器端口放在图标的接线面板的左边,而显示的联接器端口放在图标的接线面板的右边。也就是说,图标的左边为输入端口而右边为输出端口。以后我们会讲到如何使用Su

43、bVI From Selection功能来创建子程序SubVI。STEP4:保存子vi。确认当前文件的程序库路径为Seminar.LLB,用文件菜单的SAVE函数保存上述文件,并将文件命名为Thermometer.Vi。现在,该程序已经编制完成了。它可以在其他程序中作为子程序来调用,在其它程序的框图窗口里,该温度计程序用前面创建的图标来表示。联接器端口的输入端用于选择温度单位,输出端用于输出温度值。6. 关闭该程序。练习结束。建议:将所创建的子VI保存在目录下而不是保存在库文件中。尽管在称为VI库的单个文件中能够保存多个VI,但我们不希望这样做。将VI保存为单个文件是最有效的存储方式。因为这样

44、在复制,重新命名和删除文件时比使用VI库时要容易些。 与其他目录一样,VI库文件可以装入,保存和打开,但不是分层的。不能在VI库内创建另一个VI库,也不能在VI库内创建新目录。VI库文件创建后,当其出现在文件对话框中时,其图标将与VI文件图标略有不同。2.7 调用子VI在任意一个VI程序的框图窗口里,都可以把其他的VI程序作为子程序调用,只要被调用VI程序定义了图标和联接器端口即可。用户使用函数模板的Select a VI来完成。当使用该函数时,将弹出一个对话框,用户可以输入文件名。一个子VI程序,相当于普通程序的子程序。节点相当于子程序调用。子程序节点并不是子程序本身,就象一般程序的子程序调用语句并不是子程序本身一样。如果在一个框图程序中,有几个相同的子程序节点,它就象多次调用相同的子程序。请注意,该子程序的拷贝并不会在内存中存储多次。单元3 结构控制程序设计本章介绍LABVIEW为用户提供的程序结构。内容包括while loop

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服