labview实验指导书

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1
图 像采 集 (DSP)
信 号调 理 测 控 对 象
数 据采 集 卡
GP-IB仪 器
GP-IB接 口卡 测 试软 件 VXI总 线仪 器
串 行口 仪 器
现 场总 线 设备
图 1-1
二、虚拟仪器系统的软件体系结构 基本硬件确定之后,要使虚拟仪器能按用户要求自行定义,必须有功能强大 的应用软件。然而相应的软件开发环境长期以来并不理想,用户花在编制测试软 件上的工时与费用相当高,即使使用 C,C++等高级语言,也会感到与高速测试 及缩短开发周期的要求极不适应。因此,世界各大公司都在改进编程及人机交互 方面做了大量的工作,其中基于图形的用户接口和开发环境是软件工作中最流行 的发展趋势。典型的软件产品有 NI 公司的 LabVIEW 和 LabWindows,HP 公司的 HP VEE 和 HP TIG,Tektronix 公司的 Ez-Test 和 Tek-TNS 等。 图 1-2 是 NI 公司开发的图形开发软件 LabVIEW 和 LabWindows 的软件系统 体系结构。其中仪器驱动程序主要是完成仪器硬件接口功能的控制程序,NI 公司 提供了各制造厂家数百种 GP-IB,DAQ,VXI 和 RS-232 等仪器的驱动程序。有 了仪器驱动程序,用户就不必精通这些仪器的硬件接口,而只要把仪器的用户接 口代码及数据处理与分析软件组合在一起,就可以迅速而方便地构建一台新的虚 拟仪器。
图 2-3
LABVIEW 的强大功能归因于它的层次化结构, 用户可以把创建的 VI 程序当作子 程序调用,以创建更复杂的程序,而这种调用阶数是无限制的。 举一个例子,我们把前面板创建的温度计程序(Thermometer VI)作为一个子 程序用在当前新建程序里, 当前程序的前面板如图 2-4 所示,先前的温度计子程序 用于采集数据,而当前的程序用于显示温度曲线,还可以在前面板上设定测量次 数和每次测量间的延时。
图 2-4
6
图 2-5
当前程序的框图程序如图 2-5 所示,它把温度计子程序应用在一个控制循环 里,每次循环过程采集一次测量结果,当循环执行了设定的次数后,程序把采集 的数据送到前面板的图表上显示。 LABVIEW 的这种创建和调用子程序的方法,使创建的程序结构模块化,易 于调试,理解和维护。
第二节 LABVIEW 模板
1. 操作工具。使用该工具来操作前面板的控制量和指示量。当它经过文件 控制框,例如数字或字串控制时,工具会变成相应形状。 2. 位置工具。用于选择、移动或改变对象的大小。当它用于改变对象的边 框大小时,会变成相应形状。 3. 标签工具。用于输入标签文本或者创建自由标签。当创建自由标签时它
一、 虚拟仪器系统的硬件结构 虚拟仪器系统的概念是测控系统的抽象。不管是传统的还是虚拟的仪器,它 们的功能都是相同的:采集数据,对采集来的数据进行分析处理,然后显示处理 的结果。它们之间的不同主要体现在灵活性方面。虚拟仪器的功能由用户自己定 义,这意味着您可以自由地组合计算机平台、硬件、软件、以及各种完成应用系 统所需要的附件。而这种灵活性在由供应商定义、功能固定、独立的传统仪器上 是达不到的。您常用的数字万用表、示波器、信号发生器、数据记录仪,以及温 度和压力监控器就是传统仪器的代表。从传统仪器向虚拟仪器的转变,为用户带 来更多实际的利益。 虚拟仪器不强调每一个仪器功能模块就是一台仪器,而是强调选配一个或几 个带共性的基本仪器硬件来组成一个通用硬件平台,通过调用不同的软件来扩展 或组成各种功能的仪器或系统。 图 1-1 示出了现阶段虚拟仪器系统硬件结构的基本 框图。
4
第二章
第一节 虚拟仪器(VI)
虚拟仪器 G 语言编程技术
美国国家仪器 (NI) 公司的 LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种基于 G 语言的仪器系统开发平台,LABVIEW 的程序称为虚拟 仪器程序,简称为 VI。VI 包括三个部分:前面板,框图程序和图标/连接口。 前面板用于设置输入数值和观察输出量。由于程序前面板是模拟真实仪表的 前面板,输入量被称为 Controls,输出量被称为 Indicators。用户可以使用许多图 标,如旋钮,开关,按钮,图表,图形等,来使前面板易懂易看。图 2-1 是一个温 度计程序(Thermometer VI)的前面板。
图 2-2
图标/接口部件可以让用户把 VI 程序变成一个对象(VI 子程序) ,然后在其他
5
程序中象子程序一样地调用。图标表示在其他程序中被调用的子程序,而接线端 口表示图标的输入/输出口, 就象子程序的参数端口,它们对应着 VI 程序前面板的 控制量和指示量数值。 图 2-3 为温度计程序(Demo Temp Read.vi)的图标和接线 端口,接线端口一般情况下隐含不显示,除非用户选择打开看它。
顶层VI
中层VI(1)
中层VI(2)
中层VI(3)
底层VI(1)
底层VI(2)
底层VI(3)
底层VI(4)
图 1-3
二、LabVIEW 特点 LabVIEW 拥有卓越的功能、性能和丰富的实用软件包,这不仅保证了系统开
3
发质量,同时简化了开发难度。 ◆ LabVIEW 使用“所见即所得”的可视化技术建立人机界面。针对测试测量和过 程控制领域, 美国国家仪器公司在 LabVIEW 中提供了大量的仪器面板中的控制 对象,如表头、旋钮、图表等。用户还可以通过控制编辑器将现有的控制对象 修改成适合自己工作领域的控制对象。 ◆ LabVIEW 使用图标表示功能模板,使用图标间的连线表示在各功能模块间的数 据传递, 使用为大多数工程师和科学家熟悉的数据流程图式的语言书写程序源 代码。这样使得编程过程与思维过程非常近似。 ◆ LabVIEW 提供程序调试功能。 用户可以在源代码中设置断点; 单步执行源代码; 在源代码中的数据流连线上设置探针,观察程序运行过程中数据流的变化;在 数据流程图中以较慢的速度运行程序; 根据连线上显示的数据值检查程序运行 的逻辑状态。 ◆ LabVIEW 继承了传统的编程语言中的结构化和模块化编程的优点。这对于建立 复杂应用,提高代码的可重用性来说是至关重要的。 ◆ LabVIEW 采用编译方式运行 32 位应用程序,这就解决了其它用解释方式运行 程序的图形化编程平台运行程序速度慢的问题。 ◆ LabVIEW 支持多种系统平台,如 Macintosh、Power Macintosh、HP-UX、Sun SPACE、Windows3.X、Windows95/98 和 Windows NT 等;在以上任何一个平台 上开发的 LabVIEW 应用程序都可以直接移植到其它平台上。 ◆ LabVIEW 提供了大量的库函数供用户直接调用。从基本的数学函数、字符串处 理函数、数组运算函数和文件 I/O 函数到高级的数字信号处理函数和数值分析 函数。从底层的 VXI 仪器、数据采集板和总线接口硬件的驱动程序到世界各 大仪器厂商的 GPIB 仪器的驱动程序,LabVIEW 都有现成的模板帮助用户方便 迅速组建自己的应用系统。 ◆ LabVIEW 是一个开放式的开发平台。LabVIEW 提供 DLL 库接口和 CIN 节点使用 户有能力在 LabVIEW 平台上使用由其它软件平台编译的模块。 ◆ 借助 DDE、ActiveX 等技术,扩充系统的开发能力。 ◆ LabVIEW 运行多线程技术改善系统的运行及可靠性。 ◆ 将可重用代码直接嵌入 LabVIEW 中,并通过简单的图形编程方式进行控制。 ◆ 可用多种语言把 LabVIEW 做为服务器调用其程序。
图 2-1
每一个前面板程序都伴有一个对应的框图程序。框图程序用图形编程语言编 写,可以把它理解成传统程序的源代码。框图中的部件可以看成程序节点,如循 环控制,事件控制,和算术功能等。这些部件都用连线联接,以定义框图内的数 据流动方向。上述温度计程序(Thermometer VI)的框图程序如图 2-2。
一、LabVIEW 简介 LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是美国 NI 公司 研制的一个功能强大的仪器系统开发平台,用来进行数据采集、数据分析和数据 表达。经过十多年的发展,LabVIEW 已经成为一个具有直观界面,便于开发,易 于学习且具有多种仪器驱动程序和工具的大型仪器系统开发工具。 LabVIEW 是一种图形程序设计语言,它采用了工程人员所熟悉的术语、图标 等图形化符号来代替常规基于文字的程序语言,把复杂繁琐、费时的语言编程简 化成简单、直观、易学的图形编程,同传统的程序语言相比,可以节省约 80%的 程序开发时间。这一特点也为那些不熟悉 C、C++等计算机语言的开发者带来了很 大的方便。LabVIEW 还提供了调用库函数及代码接口节点等功能,方便了用户直 接调用由其他语言编制成的可执行程序, 使得 LabVIEW 编程环境具有一定的开放 性。 LabVIEW 的基本程序单位是 VI(Virtual Instrument)。LabVIEW 可以通过图形 编程的方法,建立一系列的 VI(虚拟仪器) ,来完成用户指定的测试任务。对于简 单的测试任务,可由一个 VI 完成。对于一项复杂的测试任务,则可按照模块设计 的概念,把测试任务分解为一系列的任务,每一项任务还可以分解为多项小任务, 直至把一项复杂的测试任务变成一系列的子任务。设计时,先设计各种 VI 以完成 每项子任务,然后把这些 VI 组合起来以完成更大的任务,最后建成的顶层虚拟仪 器就成为一个包括所有功能子虚拟仪器的集合。LabVIEW 可以让用户把自己创建 的 VI 程序当做一个 VI 子程序节点,以创建更复杂的程序,且这种调用是无限制 的。LabVIEW 中各 VI 之间的层次调用结构如图 1-3 所示,由图可见,LabVIEW 中的每一个 VI 相当于常规程序中的一个程序模块。
LABVIEW 具有图形化的可移动的工具模板用于创建和运行程序, 共有三类模 板包括工具(Tools) ,控制(Controls) ,和功能(Functions)模板。 一、工具模板(Tools Palette) 工具模板用于创建、 修改和调试程序。 如果该模板没有出现, 则可以在 Windows 菜单下选择 Show Tools Palette 功能以显示该模板。当从模板内选择了任一种工具 后, 鼠标箭头就会变成该工具相应的形状。 当从 Windows 菜单下选择了 Show Help Window 功能后, 把工具模板内选定的任一种工具光标放在框图程序的子程序 (Sub VI)或图标上,就会显示相应的帮助信息。工具图标有如下几种:
LabVIEW LabWindows
采集 分析 仪器驱动程序 驱动程序软件
NI-488.2 NI-VXI
表示
消息
IEEE488.2
消息
寄存器
NI-DAQ NI-DSP
寄存器
计算机总 线
Байду номын сангаас系列命令 消息
RS-232 Port
GP-IB
图 1-2
2
VXI或 MXI
第二节 LabVIEW 虚拟仪器系统开发平台
第一章
虚拟仪器技术概述
第一节 虚拟仪器的构成及特点
现代化技术的进步以计算机技术的进步为代表。不断革新的计算机技术,从 各个层面上影响着、引导着各行业的技术更新。基于计算机技术的虚拟仪器系统 技术正以不可逆转的力量推动着测控技术的革命。虚拟仪器系统的概念不仅推进 了以仪器为基础的测控系统的改造,同时也影响了以数据采集为主的测控系统的 传统构造方法的进化。过去独立分散、互不相干的许多领域,在虚拟仪器系统的 概念之下,正在逐渐靠拢、相互影响,并形成新的技术方法和技术规范。 虚拟仪器系统概念是对传统要求概念的重大突破,是计算机系统与仪器系统 技术相结合的产物。它利用计算机系统的强大功能,结合相应的硬件,大大突破 传统仪器在数据处理、显示、传送、存储等方面的限制,使用户可以方便地对其 进行维护、扩展、升级等。 虚拟仪器系统技术的基础是计算机系统,核心是软件技术。因此,美国国家 仪器公司提出其著名的口号: The Software is the Instrument (软件就是仪器) 。可 以说,组建现代化测控系统的成败很大程度上取决于软件平台和工具以及相关硬 件设备的选择。
相关文档
最新文档