Academic Company Events Community Support Solutions Products & Services Contact NI MyNI

2. 图形化编程

在例如NI LabVIEW的图形化编程语言中,鼠标是主要的编程环境交互工具。 也就是说,鼠标需要用来完成各种不同的任务,如选择、连线、高亮文本等等。 该单元探讨了使用鼠标即可在LabVIEW中实现的许多功能。


详细信息

下载PDF格式详细信息


数据流

LabVIEW按照数据流(dataflow)模式运行VI。 当所有需要的输入都存在时,程序框图节点将运行。 节点在运行时产生输出端数据并将该数据传送给数据流路径中的下一个节点。 数据流经节点的过程决定了程序框图上VI和函数的执行顺序。
Visual Basic,C++,JAVA以及绝大多数其它文本编程语言都遵循程序执行的控制流模式。 在控制流中,程序元素的先后顺序决定了程序的执行顺序。

图1是一个数据流编程的范例,假设一个实现两个数字相加的程序框图,然后从结果中减去50.00。在这个范例中,程序框图从左向右执行,这并非因为对象的放置顺序,而是因为“减”函数必须在“加”函数执行完,并将数据传到“减”法函数前时才执行。 节点只有在所有输入接线端数据准备好后才能执行,在节点完成执行后才能向输出接线端提供数据。

图1. 数据流编程范例

在图2中,考虑哪段代码先执行-“加”、“随机数”,还是“除”函数。 您无法知道答案,因为“加”和“除”函数的输入同时准备好,而随机数并没有输入。 在一个代码段必须在另一个前执行,并且两个函数间没有数据依赖关系的情况下,可以采用其它编程方法(例如顺序结构或错误簇)强制设定执行的顺序。

图2.多代码段的数据流范例

返回首页

连线

通过连线可以在程序框图对象之间传递数据。 在图1和2中,输入控件和显示控件接线端通过连线连接到“加”函数和“减”函数。每根连线都只有一个数据源,但可以与多个读取该数据的VI和函数连接。 不同数据类型的连线有不同的颜色、粗细和式样。

图3. 断线范例

断线显示为一条中间带有红色X的黑色虚线,如图3所示。 出现断线有多种原因,如试图连接数据类型不兼容的两个对象时就会产生断线。表1显示了最常见的连线类型。

表1.常见的连线类型

LabVIEW中,连线用于连接多个接线端,从而在VI中传递数据。 连线连接的输入端和输出端必须与连线上传输的数据类型兼容。 例如,数组输出端不能连接到数值输入端。 另外,连线的方向必须正确。 连线必须有一个输入和至少一个输出。 例如,不能在两个显示控件间连线。 决定连线兼容性因素包括输入/显示控件的数据类型和接线端的数据类型。

例如,开关的边框为绿色,它可与Express VI上任意带绿色标签的输入端相连。 如旋钮的边框为橙色,它可与任意带橙色标签的输入端相连。 而橙色旋钮无法与带绿色标签的输入端相连。 注意:连线与接线端的颜色相同。

返回首页

自动连接对象

放开鼠标将对象放置在程序框图上时,LabVIEW会自动进行连线。 您也可以对程序框图上已经存在的对象进行自动连线。 LabVIEW会对最匹配的接线端进行连线,对不匹配的接线端不予连线。

默认状态下,从函数(Functions)模板选择一个对象,或者按<Ctrl>键并拖动对象来拷贝一个已经存在于程序框图上的对象时,自动连线方式被启用。默认状态下,用定位工具移动程序框图上已经存在的对象时,自动连线被取消。

通过选择工具»选项,然后从类别列表中选择程序框图,可调整自动连线设置。

返回首页

手动连接对象

将连线工具移至在接线端时,将出现含有接线端名称的提示框。 另外,即时帮助窗口和图标上的接线端都将闪烁,以帮助您确认正确的接线端。将连线工具移至第一个接线端上并单击,然后将光标移动到第二个接线端再次单击,就可在这两个对象之间创建连线。

连线结束后,右键单击连线,从快捷菜单中选择整理连线,可使LabVIEW自动选择连线路径。 按Ctrl-B可删除在程序框图中的所有断线。

返回首页

单元测试: 图形化编程

完成下面的小测验,评估你在LabVIEW图像化编程和详细信息中所学概念的理解。

  1. 类似于大多数基于文本的环境,LabVIEW由上至下运行程序框图上的代码。



     
  2. 可右键单击接线端并选择________,创建合适的常量或输入控件和显示控件。
    可视项目
    替换
    属性
    创建

     
  3. 那个节点最后执行?
    平方根
    添加
    平方(上)
    平方(下)

     
  4. 哪一个节点最先执行?
    平方(上)
    平方(下)
    添加
    平方根
    未知

     
  5. ______________可视化地呈现了LabVIEW程序框图的数据流。
    探针
    整理程序框图
    高亮显示执行过程
    单步进入

     
  6. 只有在接受到所有输入后终端才能输出结果。



     
  7. 删除程序框图中所有断线的快捷方式是 ___________.
    Ctrl-B
    Ctrl-Z
    Ctrl-E
    Ctrl-Shift-Z

     

 

分步测试:
LabVIEW Basics

试图通过LabVIEW Basics测试来考察你对LabVIEW概念的理解。 在完成LabVIEW Basics Concepts部分7个单元学习后进行此项测试。 此测试内容包括20道多选题。

开始测试

分步练习:
LabVIEW Basics

完成LabVIEW Basics练习,评估在LabVIEW环境下的编程学习。 在完成LabVIEW Basics Concepts部分7个单元学习后进行此项练习。 练习内容包括在LabVIEW中创建一个计算器。

开始练习