当前位置:首页 > 虚拟仪器LabVIEW介绍
图2 虚拟仪器(VI)的框图
LabVIEW的框图中使用了丰富的设备和模块图标,与科学家、工程师们习惯的大部分图标基本一致,这使得编程过程和思维过程非常的相似。多样化的图标和丰富的色彩也给用户带来不一样的体验和乐趣。
前面板是VI的交互式用户界面,外观和功能都类似于传统仪器面板,用户的输入数据通过前面板传递给框图,计算和分析结果也在前面板上以数字、图形、表格等各种不同方式显示出来。一个典型的VI前面板如图3所示:
图3 虚拟仪器(VI)的前面板
图标是VI的图形符号,连接器则用来定义输入和输出,每一个VI都有图标和连接器。用户要做的工作就是恰当地设置参数,并连接各个子VI。编程一般步骤就是使用鼠标选取合适的模块、连线和设置参数的过程,与烦琐枯燥的文本编程相比更为简单、生动和直观。图4所示的是一个子VI的图标和连接器,以及通过连线进行编程的过程。
(a) 图标
(b) 连接器
(c) 通过连线进行编程
图4 虚拟仪器(VI)的图标和连接器
如果将虚拟仪器与传统仪器作一类比,前面板就像是仪器的操作和显示面板,提供各种参数的设置和数据的显示,框图就像是仪器内部的印刷电路板,是仪器的核心部分,对用户来讲是透明的,而图标和连接器可以比作电路板上的电子元器件和集成电路,保证了仪器正常的逻辑和运算功能。
数据流驱动
宏观上讲,LabVIEW的运行机制已不再是传统上的冯·诺伊曼式计算机体系结构的执行方式了。传统计算机语言(如C语言)中的顺序执行结构在LabVIEW中被并行机制所代替。本质上讲它是一种带有图形控制流结构的数据流模式,程序中的每一个函数节点只有在获得它的全部输入数据后才能够被执行。既然LabVIEW程序是数据流驱动的,数据流程序设计规定,一个目标只有当它的所有输入有效时才能够被执行;而目标的输出只有当它的功能完全时才是有效的。于是LabVIEW中被连接的函数节点之间的数据流控制着程序的执行次序,而不像文本程序那样受到行顺序执行的约束。我们可以通过相互连接函数节点简洁高效地开发应用程序,还可以有多个数据通道同步运行,即所谓的多线程。
在LabVIEW中单击加亮执行(Highlight Execution)按钮,即可以动画方式演示框图的执行过程,可以观察到数据流流动的方式,数据以有色小圆点表示,在各种不同颜色(代表不同数据类型)的连线上流动。如图5所示:
图5 加亮执行的VI(演示数据流驱动)
小结
基于图形化编程和数据流驱动这两个特点,LabVIEW编程语言学习起来相对较容易些,可减少开发时间。但客观地讲,习惯了文本式编程语言的程序员使用图形表达程序,还需要一段思维转变和适应过程。
而且,对于那些数学和逻辑运算过程较复杂的程序,图形语言就不如文本语言更容易表达,此类情况,用户可以选择使用VC或者Matlab等开发工具将数学分析和处理过程编写为专用的动态链接库,LabVIEW提供了专门的接口函数可以调用之。这样,可以结合图形语言和文本语言各自的优点,更为灵活、高效、易用。
共分享92篇相关文档