LebVIEW入门
1. 1.简介
LabVIEW是一种功能强大而又复杂的鞭策和功能环境,能够通过图形编程语言来开发数据采集、信号分析及仪器控制领域的虚拟仪器应用程序。
LabVIEW是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,被视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS-232和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是程序图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此LabVIEW 是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。
LabVIEW具有开发编程环境直观图形化、测控相关控件和处理函数丰富、前面板空间风格多样、界面设计简洁、具有直观的数据流编程方式及无需学习文本编程语法规则。
2. 2.软件界面
2.1 启动界面

图 1 LabVIEW启动界面
LabVIEW的启动界面如图 1所示,可以选择创建新项目或打开现有项目。
选择创建项目后,有预设好的各种模板可供选择。如果单纯练习编程可以直接创建VI,但要实现复杂点的功能,单个VI是不够用的,就需要创建项目。

图 2 选择文件模板

图 3 项目浏览器
创建完成新项目后,会弹出项目浏览器界面,里面包含了项目中所有VI文件和其他的文件设置。之后,选择文件-新建VI来创建一个空白程序文件。
VI,是Virtual Instrument的缩写,意为虚拟仪器。在VI文件中进行编程相当于通过LabVIEW开发一台虚拟的仪器,通过我们编写的代码与前面板的控件相配合,来实现各种仪器的功能。
新建VI后弹出两个窗口,分别是前面板和程序框图。
前面板是LabVIEW的重要组成部分,是图形用户界面,该界面上有用户输入控制和输出显示两类对象,用于模拟真实仪表的前面板。控制和显示是以各种各样的图标形式出现在前面板中,具体以旋钮、开关、图形、图标以及其他控制和显示对象等;
程序框图又称代码窗口或流程图,是VI图形化的源程序,是VI的核心。在程序框图中对VI编程,以控制和操纵定义在前面板上的输入和输出等功能。程序框图中包含前面板上控制量和显示量的接线端子,还有在前面板上没有但编程必须有的元素,如函数、结构和连线等。在前面板工具栏中可以通过选择“窗口”—“显示程序框图”命令打开程序框图,也可以使用快捷键Ctrl+E来完成。

图 4 VI文件编程界面
3. 3.程序结构
3.1 顺序结构
顺序结构会按顺序执行子框图,由于每个子框图连接起来像一帧帧的电影胶片,因此被叫做帧。LabVIEW中提供了两种顺序结构平铺式顺序结构和层叠式顺序结构。平铺式顺序结构如图 5所示,首先在第一帧进行加法运算,然后在第二帧进行乘法运算,第一帧的加法函数输出端可以直接连接到第二帧的乘法函数的输入端。层叠式顺序结构与平铺式顺序结构不同的是,层叠式循序结构各个帧之间的数据通过顺序局部变量进行传递的,如需节省框图空间可使用层叠式顺序结构。

图 5 LabVIEW两种顺序结构
3.2 循环结构
LabVIEW中存在两种循环结构:for循环和while循环。for循环预先指定了循环次数,会执行指定次数的重复操作;而while循环会一直执行,直到输入条件变为False为止。
图 6 for循环
for循环将子框图中的代码执行N次,N为计数端子的输入值,如图 6所示。在for循环中有两个端子:计数端子(输入端子)和重复端子(输出端子)。通过从循环外连接一个数值到计数端子,可以设置循环次数(计数值)。重复端子包含了已执行循环的次数,从0开始计数,即0为第1次重复,N-1为第N次重复。
图 7 while循环
如图 7所示,while循环会重复执行子框图中的代码知道满足某种条件为止。while循环中有两个端子:条件端子(输入端子)和重复端子(输出端子)。while循环的重复端子的作用和for循环重复端子是一样的,用来输出已执行循环的次数。条件段子的输入是布尔变量:True或False。当布尔值为False时,while循环停止执行。
下面将通过循环显示随机数来展现for循环和while循环的用法。
3.3 for循环示例
首先,通过for循环来实现循环显示随机数,如图 8所示,其VI程序构建步骤如下:
(1)在框图上放置随机数函数,并为随机数函数创建指示器并设置标签;
(2)在框图上放置for循环并包围随机数函数;
(3)从计数端子弹出菜单,创建循环常数,设置为100,让循环执行100次;
(4)在重复端子出创建指示器并设置标签;
(5)调试并运行程序;
(6)在前面板上能够看到循环计数从0增加到99(循环100次),而每次重复都会显示一个0-10的随机数。
图 8 使用for循环显示随机数
3.3 while循环示例
通过while循环实现随机数显示如图 9所示,其VI程序构建步骤如下:
(1)在框图上放置随机数函数,并为随机数函数创建指示器并设置标签;
(2)在框图上放置while循环并包围随机数函数;
(3)从计数端子弹出菜单,为条条件端子创建控件,框图上会出现布尔变量,同时前面板上将出现开关按钮。在程序运行时,开关按钮用于停止while循环
(4)在重复端子出创建指示器并设置标签;
(5)调试并运行程序;
(6)在前面板上能够看到循环计数持续增加,直至按下开关按钮,显示为“OFF”,此时条件段子变为False,while循环停止。
图 9 使用while循环显示随机数