2.3 基本概念
精通LabVIEW虚拟仪器程序设计与案例实现
在这一节里主要介绍用LabVIEW编程时遇到的一些基本概念,包括前面板、后面板、数据连线、图标端口、VI等。
2.3.1 VI
LabVIEW开发出来的程序叫虚拟仪器(Virtual Instrument),缩写VI。一个最基本的VI由3部分组成:前面板、后面板(程序框图)和图标/连线端口,如图2-15所示。
2.3.2 前面板
前面板是图形化用户界面,用于设置输入值和观察输入值,可以模拟真实的仪器前面板。前面板由控制、指示、装饰三部分组成。为方便起见,在本书中我们约定将前面板中的控制和指示统称为前面板对象或控件。简言之,前面板就是放置输入/输出的地方,即最终程序显示的界面,如图2-16所示。
1.控制控件
控制控件是用户设置和修改程序输入的接口,相当于C语言中的scanf函数。在LabVIEW中,这些对象以图标的形式显示,如图2-17所示的数值输入控件、旋钮控件、路径输入控件等。
2.指示控件
指示控件用于显示程序运行的结果,相当于C语言中的输出函数printf。在LabVIEW中指示控件也以图标的形式显示,如图2-18所示的布尔显示控件、波形图、温度计等。
3.修饰控件
修饰控件仅是用来对前面板进行装饰,使其看上去更美观,并不能作为输入/输出控件来使用。修饰控件有很多,如线条、凹凸盒、方框等,如图2-19所示。
提示 对于前面板上的对象,用户可以根据自己喜好进行修改,关于界面修饰的内容,将在第13章中进行详细介绍。
2.3.3 程序框图
每一个前面板,都有一个程序框图与之对应,程序框图又叫后面板,是编写程序代码的地方。程序框图由节点、端口、数据连线组成,如图2-20所示。
1.节点
节点是VI中的执行元素,类似于C语言中的语句、函数或者子程序。节点之间按照一定逻辑关系相互连接,定义框图内的数据流向,图2-20中的“程序框图”就是一个典型的例子。一般来说,在前面板上,除了修饰控件外的其他对象,都会在后面板上有一个对应的节点。
LabVIEW共有4种类型的节点,如表2-1所示。
2.端口
节点与节点之间、节点与前面板对象之间都是通过端口和数据线连接来传递数据的。数据端口是数据在前面板对象与框图程序之间传递数据的接口,也是数据在框图程序内节点之间传输的接口。LabVIEW中有两种类型的数据端口:前面板控件端口和节点的端口。
前面板控件的端口是前面板控件与框图程序交互数据的接口,它又分为控制端口(输入端口)和显示端口(输出端口)。控制端口是前面板中控制控件的端口,用于在程序运行时,给程序输入数据;显示端口是前面板中显示控件的端口,用于在程序运行时,往外输出数据。输入端口和输出端口在图标上表现为不同的形式:输入端口边框为粗实线,箭头在图标右侧;输出端口边框为细实线,箭头在左侧,如图2-21所示。输入端口与输出端口可以相互切换,方法为在图标上单击鼠标右键,选择“转换为输入控件/显示控件”。
端口的显示形式是可以设置的,默认情况下是以图标的形式显示的,占用的空间大,在编写复杂程序的时候会显得凌乱,可以将它以非图标的形式进行显示,切换的方法为,在图标上单击鼠标右键,单击取消“显示为图标”前面的对号。如图2-22所示。如果要显示为图标,则重新选择“显示为图标”即可。
节点的端口相当于传统编程语言中函数的参数。例如,“正弦函数”节点共有两个端口,其中x为输入端口,sin(x)为输出端口,这里x相当于C语言中函数sin(x)的参数x,如图2-23所示。
3.连线
数据连线是端口与端口之间数据传输的通道,它将数据从一个端口传送到另一个与之相连的端口中。数据连线中的数据是单身流动的,从源端口(输出端口)流向一个或者多个目的端口(输入端口)。LabVIEW中利用数据连线传递各种不同类型的数据,不同的数据类型用不同的线型和颜色来区分,具体可以参阅第3章,3.1节中的图3-1。
关于各个端口之间的数据连线,有两种方式:手动和自动。在手动方式下,使用连线工具可以在两个端口之间进行连线。在默认情况下,只要将鼠标放到端口处,即会自动显示连线工具。在放置图标时,如果两个图标距离比较近,则会自动连线。如果要删除连线,只要选中要删除的连线,单击键盘上的“Del”键即可。