虚拟仪器实验三 下载本文

实验三 LabVIEW编程的数组和簇与图形显示

(一)LabVIEW编程的数组和簇

一、实验目的

1.掌握如何创建、使用数组;数组函数的功能和应用,掌握它们的区别以及相应操作。 2.掌握如何创建、使用簇;簇函数的功能和应用,掌握它们的区别以及相应操作。 二、实验原理

1.数组是一些具有相同类型的元素组成的集合。数组包含两方面的内容:元素和维数。数组中的元素可以是数字、布尔、字符、路径、波形和簇等数据类型。一个数组可以是一维或者多维,如果必要,每维最多可有231-1个元素。可以通过数组索引访问其中的每个元素。数组元素不能是数组、图表或者图形。

LabVIEW提供了很多用于操作数组的功能函数,位于函数Functions?数组Array中。其中包括创建数组、初始化数组、数组大小、数组子集、索引数组等。 ? 创建数组:用于根据标量值或者其他的数组创建一个数组。 ? 初始化数组:创建所有元素值都相等的数组。 ? 数组大小:返回输入数组中的元素个数。 ? 数组子集:选取数组或者矩阵的某个部分。 ? 索引数组:用于访问数组中的某个元素。

建立数组的步骤如下:

1)从数组和类子模板(Controls-All Controls-Array & Cluster)上选中数组,放置在前面板中,此时为数组空壳,可以向里边添加(用拖拽的方法)数字、布尔、字符等数据类型的控制器或指示器,来建立相应的数组控制器和指示器。此时可以看到数组上有两个显示窗口:

? 标号显示窗:标号从0开始,每单击一次“增加”键,标号显示值顺序递增。这个标号

就是数组元素的序号;对于一个含n个元素的数组,其标号为0~n-1。

? 元素显示窗:用来显示元素的数值。数组中的元素按序号排列。数组元素的查找按行/列标号进行。

2)右键单击标号窗口,弹出一个快捷菜单,选择Add Dimension来增加数组的维数。 2.簇(Cluster)是另一种数据类型,它的元素可以是不同类型的数据。它类似于C语言中的structure。使用簇可以把分布在框图中各个位置的数据元素组合起来,这样可以减少连线的拥挤程度,减少子VI的连接端子的数量。

簇相当于一个容器,容器中的元素可以是各种不同的数据类型。也就是说,可以在一个簇中放置控制模板上的各种控件,如数字控件、布尔控件、数组控件等,但是不能将输入控件和输出控件同时放入其中。因此,在编辑流程图时,可以减少连线数以及连线的节点数,最终简化流程图。它有多个输入,一个输出。

要建立簇,可以选择控制模板中数组和类子模板上的Cluster,将其调入前面板。向类控件中放入元素,即将控制模板中的相应控件放入其中,俗称把元素“捆绑”在一起。 ? 捆绑(Bundle)数据

Bundle功能将分散的元件集合为一个新的簇,或允许你重置一个已有的簇中的元素。可以用位置工具拖曳其图标的右下角以增加输入端子的个数。

0

最终簇的序是取决于被捆绑的输入的顺序。右图中Bundle图标中部的Cluster端子用于用新元素重置原簇中的元素。

? 分解(Unbundle)簇

Unbundle是Bundle的逆过程,它将一个簇分解为若干分离的元素。如果要对一个簇分解,就必须知道它的元素个数。LabVIEW还提供一种可以根据元素的名字来捆绑或分解簇的方法。

右键单击簇控件的边缘,弹出快捷菜单,如图3-1。其中: Reorder Controls In Cluster:用于设置类控件中各元素的排列顺序,这个排列顺序是输出信号顺序,如图3-2所示。在Cluster输出1和输出2两个簇控件中,元素输出的排列顺序不一样。

AutoSizing:右键单击该选项后,出现如图3-3所示的菜单,选择相应的选项,可自动调节类控制的边框大小及排列方式。

图3-1 簇控件快捷菜单

Properties:用来定义类控件的一些属性,如“AutoSizing”,改变标签的名称,是否显示标签等内容及填入描述信息。属性页将前面板的属性特征集中到了一些简单的配置对话框中。

数组和簇的区别如下:

? 簇可以包含不同的数据类型,而数组仅可以包含相同的数据类型; ? 簇具有固定的大小。 三、实验内容

1.练习数组的基本创建。利用循环的自动索引功能创建一个装有10个随机数的一维数组,并计算数组元素的平方和,同时求出该数组索引为3、长度为2的子数组。要求前面板显示该一维数组及平方和结果、输出的子数组。

图3-2 Reorder Controls In Cluster设置

图3-3 AutoSizing设置

2.编辑下列VI,理解一维数组和二维数组的产生,存为Two Dimensional Array Demo.vi。

1

3-4 Two Dimensional Array

3.创建一个VI,实现将输入控件值与输入数组合并连接起来生成新的数组。该VI使用数组大小和初始化数组两函数来创建维数合适的新数组,并将新数组的所有元素初始化为1。最后,VI计算两新数组间的差,并将结果显示在前面板中。前面板和基本程序框图组成如图3-5所示,最后将该VI保存为Practice with Arrays .vi文件。

图3-5 Practice with Arrays前面板和程序框图

4.创建由一个控件簇和一个显示簇所组成的VI。要求输入控件数值加一,开关二反相,显示簇同时进行相应的显示。前面板组成如图3-6,最后将该VI保存为Cluster.vi文件。

图3-6 Cluster前面板和程序框图

五、实验报告要求

1.调试编辑以上VI,按顺序打印以上VI的前面板与程序框图后,贴在实验报告上;实验报告中要求详细说明设计步骤要点。

2.心得体会及其它。

2