首页 理论教育如何操作数组与簇?

如何操作数组与簇?

【摘要】:图2-24显示了一个未初始化的二维数组输入控件。图2-23 创建数值数组图2-24 未初始化的二维数组输入控件在一个二维数组中,在一列中的某个元素初始化后,那一列中的其余元素都将自动初始化,并被赋予相应数据类型的默认值。图2-25 一个有6个元素的二维初始化数组图2-26 数组函数选板2.簇簇是另一种数据类型,它的元素可以是不同类型的数据。

1.数组

LabVIEW提供了功能丰富的数组函数供用户在编程时调用。LabVIEW中的数组是数值型、布尔型、字符串型等多种数据类型中的同类数据集合。在对一组类似数据进行操作并重复计算时,可以考虑使用数组。数组对于用来存储从波形收集的或在循环(每次循环生成数组中的一个元素)中生成的数据是比较理想的。一个数组可以是一维或者多维,如果必要,每维最多可有231-1个元素。可以通过数组索引访问其中的每个元素。索引的范围是0~n-1。

(1)数组的组成

数组由索引、数据和数据类型构成。其中数据类型隐含在数据中。

(2)数组的创建

一般说来,创建一个数组有两件事要做,首先要建一个数组的“壳”(shell),然后在这个壳中置入数组元素(数或字符串等)。

一维数组的创建过程如下:

1)从前面板的控件选板,选择一种显示风格,如选择“新式”→“数组、矩阵与簇”→“数组”,放入程序前面板。如图2-22所示。

978-7-111-49442-3-Chapter02-41.jpg

图2-22 前面板数组控件选择

2)然后选择一个数值/字符串显示控件或数值/字符串输入控件插入到数组框中。这样就创建了一个数组。如图2-23所示。拖动数组的外边框可以添加更多的数组元素。

前面的例子是一维数组。对于二维数组,需要一个列索引和一个行索引来定位数组中的某一个元素,并且,这两个索引都是从零开始的。如需在前面板上添加一个多维数组控件,则右键单击索引框并从快捷菜单中选择添加维度。也可以改变索引显示框的大小,直至出现所需维数。

(3)初始化数组

数组可以进行初始化,或者不初始化。数组初始化时,需要定义每个维度的元素个数和每个元素的内容。一个未初始化的数组包含固定的维数,但不包含任何元素。图2-24显示了一个未初始化的二维数组输入控件。注意,元素都是灰色的,这表示数组未初始化。

978-7-111-49442-3-Chapter02-42.jpg

图2-23 创建数值数组

978-7-111-49442-3-Chapter02-43.jpg

图2-24 未初始化的二维数组输入控件

在一个二维数组中,在一列中的某个元素初始化后,那一列中的其余元素都将自动初始化,并被赋予相应数据类型的默认值。如图2-25所示,在以0为起点的数组的第二行第二列中输入了4。第0、1和2列中先前的元素都初始化为0,即数值数据类型的默认值。

(4)数组函数

数组函数用于对一个数组进行操作,主要包括求数组的长度、替换数组中的元素、取出数组中的元素、对数组排序或初始化数组等各种运算,LabVIEW的数组选板中有丰富的数组函数可以实现对数组的各种操作。函数是以功能函数节点的形式来表现的。数组函数位于函数选板中“编程”子选板下的“数组”选板内,如图2-26所示。

978-7-111-49442-3-Chapter02-44.jpg

图2-25 一个有6个元素的二维初始化数组

978-7-111-49442-3-Chapter02-45.jpg

图2-26 数组函数选板

2.簇

簇(Cluster)是另一种数据类型,它的元素可以是不同类型的数据。它类似于C语言中的结构体。使用簇可以把分布在流程图中各个位置的数据元素组合起来,这样可以减少连线的拥挤程度。减少子VI的连接端子的数量(连接器最多可以有28个接线端。如果前面板上要传送给另一个VI的控件和显示件多于28个,应将其中的一些对象分组成为一个簇,然后将该簇分配到接线器上的一个接线端)。LabVIEW错误簇是簇的一个例子,它包含一个布尔值、一个数值和一个字符串。

(1)簇元素的顺序

簇和数组元素都是有序的,必须使用解除捆绑函数一次取消捆绑所有元素。也可使用按名称解除捆绑函数,按名称解除捆绑簇元素。如使用按名称解除捆绑函数,则每个簇元素都必须带有标签。簇不同于数组的地方还在于簇的大小是固定的。与数组一样,一个簇里面要么全是控件要么全是显示件。簇不能同时含有控件和显示件。

(2)创建簇

簇的创建方法与数组类似。前面板上添加一个簇外框,再将一个数据对象或元素拖到簇外框中,数据对象或元素可以是数值、布尔、字符串、路径、引用句柄、簇输入控件或簇显示控件。放置簇外框时,通过拖动光标可以改变簇的大小。图2-27所示为一个包含三个控件的输入簇。

(3)簇函数

使用簇函数创建簇并对其进行操作。比如,可以执行以下类似操作:从簇中提取单个数据元素;向簇添加单个数据元素;将簇分裂成单个数据元素。簇函数位于函数选板中“编程”子选板下的“簇、类与变体”选板内,如图2-28所示。

978-7-111-49442-3-Chapter02-46.jpg

图2-27 输入簇范例

978-7-111-49442-3-Chapter02-47.jpg

图2-28 簇函数

在程序框图中右键单击簇接线端,从快捷菜单中选择簇、类和变体选板,可以在程序框图上放置“捆绑”、“按名称捆绑”、“解除捆绑”和“按名称解除捆绑”函数。“捆绑”函数用于集合一个簇,“捆绑”和“按名称捆绑”函数用于修改一个簇,而“解除捆绑”和“按名称解除捆绑”函数用于分解一个簇。“捆绑”和“解除捆绑”函数自动包含正确的接线端数字。“按名称捆绑”和“按名称解除捆绑”函数随簇中的第一个元素同时出现。使用定位工具可以调整“按名称捆绑”和“按名称解除捆绑”函数的大小,显示簇中的其他元素。

本节主要介绍了LabVIEW中常用的数据类型。读者可以使用这些控件和函数来创建所需要的数据。