1、LabView简介
LabView(Laboratory Virtual Instrument Engineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。
传统文本编程语言根据语句和指令的先后顺序决定程序的执行顺序,而LabView则采用数据流编程方式,程序框中节点之间的数据流向决定了程序的执行顺序。VisualBasic、 C、C++、C#、Java这些语言使用文本方式编程。
LabView用图标表示函数,用连线表示数据流向,它提供了很多外观与传统仪器类似的控件,如示波器、万用表等,可以方便、快捷的创建用户界面。
用户界面在LabView中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制,这就是图形化源代码,又称G代码,LabView的图形化源代码在某种程度上类似于数据流流程图,因此又称作程序框图代码。前面板上的每一个控件对应于程序框图中的一个对象,当数据“流向”该控件时,控件就会根据自己的特性以一定的方式显示数据,例如开关、数字、图形等。
图1-前面板
图2-程序框图
2、LabView常用快捷键
- Ctrl + E:在前面板和程序框图之间相互切换
- Ctrl + R:运行程序
- Ctrl + .:结束运行vi
- Ctrl + B:删除断线
- Ctrl + Z:撤销上一步操作
- Ctrl + L:提示错误,当程序不能运行时,可以提示哪里出错了
- Ctrl + S:保存
- Ctrl + Q:退出LabView编程环境
- Ctrl + W:关闭当前窗口,当打开程序较多时,就不用点右上角的叉了。
- Ctrl + N:新建vi
- Ctrl + w:关闭vi
- Ctrl + U:快速整理所选区域的vi
- shift + 单击鼠标左键:可以选择多个vi
- shift + 鼠标右键点击:可以选择鼠标不同的形式,实现不同的功能
- ctrl + 鼠标左键拖动:扩大内部空白区域
- ctrl + Alt +鼠标左键拖动:缩小内部空白区域
- ctrl + O:快速打开一个vi
- ctrl + T:调整程序框图和前面板大小,方便操作
- ctrl + shift + A:自动向左对齐,以选中的左边最远的vi为准
- ctrl + D:垂直方向自动调整间距,以最上和最下的vi间距为基准,中间的vi自动调整等宽间距
- ctrl + shift + N:导航,如果程序框图或前面板内容较多,超出面板页面可使用此快捷键,按下鼠标左键拖动可查看内容。
3、新建项目
使用LabView创建的程序后缀为VI(Virtual Instrument),即虚拟仪器。这是因为它的很多界面控件都模拟了现实世界的仪器,LabView的核心概念就是“软件即时仪器。
1)、打开已经安装好的LabView,得到如下界面,点击Create Project。
2)、All->Blank VI,然后点击Finish,即创建了一个空白项目,可以得到一个前面板和一个程序框图面板。
4、基础案例
1)、在前面板和程序框图右键都会有"Express",放的都是常用控件。新手使用“Modern”(新式)就差不多了
2)、右键选择想要添加的控件,拖放到前面板中,程序框图中也会出现对应的控件,名字也是对应的
3)、加法简单示例,如下图,在前面板中先拖放两个输入控件(加数)和一个数值显示控件(和),简单改一下名字。
如下图,在程序框图中右键鼠标,选择运算“+”,拖放到程序框图中
如下图,连线。然后在前面板中输入数值,点击左上角的白色箭头运行,即完成了简单的加法运算了
简单的加法运算每次输入完都需要点一次“运行”,那怎么实现输完数值后自动运行呢?
4)、加法进阶示例。要实现自动运行需要用到while循环结构。右键程序框图按如下选择
选择后,在程序框图界面可以画一个循环框,把之前创建的控件放入其中,右键红点创建常量F
最终效果:在数值框中输入数值,结果就可自动变化
补充:利用自带的循环也可达到此效果
5、程序结构
LabView常用的一些程序结构包括:平铺式顺序结构、for循环、while循环、条件结构、顺序结构等,这里详细介绍这五种结构
1)、平铺式顺序结构:相当于C/C++里的顺序结构,只不过这里是以画图的方式。在之前的加法运算基础上,我们按如下图方式右键添加平铺式顺序结构,然后把加法运算放入框中(可以框选加法运算,然后拖放至框中。也可以直接用框框住加法运算)。
在框后面加入帧,选中框,右键选择Add Frame After
为了方便查看效果,这里增加延时,右键添加定时
按相同方法添加一个减法运算,最终程序图如下,常量1000表示1000ms,添加方法放在程序图后面。最终效果是:输入各数值后,点击运行,然后会先计算结果1,等待1000ms后,再计算结果2。
图1-最终程序图
图2-添加常量
2)、For循环 ,增加for循环和随机数
在前面板增加波形图标和一个显示控件,最然后按最终程序框图增加常量并连线即可 ,(循环计数0~n-1)
3)、while循环 ,while循环前面已介绍怎么使用,这里不再详细介绍,简单说明一下,直接上程序图,左图为for循环的,按之前那样在前面板添加while循环要用的波形图标和显示控件
运行效果:可以看出for循环可以限制循环次数,而while循环满足条件的话没有次数限制,这和C/C++是一样的。
4、条件结构:LabView的条件结构相当于我们C/C++里用的if-else和switch语句
范例:当值大于50的时候,灯点亮;数值继续增大;当值大于100时,弹出对话框。其他程序不运行。
下图为需要增加的相应控件所在的位置
下图为真条件时所设置的布尔灯
下图为假条件时设置的布尔,需要按如下选择,创建一个值属性,然后放到假条件的分支里
运行结果:当运行次数框中的数值大于50后,布尔灯亮;等到数值增加到100,弹出提示框提示达到100了。
5、事件结构:LabView的事件结构类似于Java的event监听事件
新建一个确定按钮,前面板右键鼠标-布尔-确定按钮,创建一个数值,并新建其属性节点-值(在前面有讲过怎么添加)
添加事件分支,按如下顺序添加事件分支
添加的事件分支可以点击此处的倒三角进行查看
运行结果 :点击ok按钮,数值加1,布尔灯亮。
6、帮助文档
按如下操作选择,即可打开帮助文档
然后就会弹出详细的帮助框(程序框图同理)