Labview控制APx(Audio Precision)进行测试测量(七)

处理集群控制子集

大多数用户不会想要设置所有的控制包括在一个大的控制集群,如水平和增益配置控制。例如,假设您只在 APx 中使用模拟不平衡输出连接器,而您想要做的就是控制发电机的电平和频率。在这种情况下,水平和增益配置集群中的大多数控制都是不必要的。要处理这种情况,可以考虑自定义控件。

例如,在 My APx 项目 VI 中,让我们创建一个控件,它将允许我们仅更改模拟发生器的电平和频率。按照下面的步骤进行。




经过修改的 My APx 程序 VI 允许用户仅更改发电机频率和电平和增益测量的电平,现在准备运行。如果你运行它,你会看到它像以前一样工作。

APx LabVIEW .NET 驱动程序 VIs 广泛使用集群控件。将单个数据项从集群取出或放入集群的最佳方法是使用 LabVIEW 中的按名称绑定和按名称 Unbundle 函数。图 53(左)显示了按名称Unbundle 函数,该函数用于提取信号发生器设置(L&G)集群的特定元素。

使用LabVIEW驱动程序访问主要测量结果尽管到目前为止的示例已经说明了在 APx 中运行测量,但我们还没有考虑如何处理 APx 测量的结果。为了有价值,控制 APx500 分析仪的外部程序必须能够访问测量数据。本节将着重于使用 LabVIE W 驱动程序访问 APx 主要测量结果(当您向导航器添加测量时通常出现的结果)。下面几节将讨论派生测量结果

首先,让我们回顾一下 APx 中的测量结果,使用默认项目模板在 APx 中创建一个新项目,并向信号路径 1 添加阶跃频率扫描。如果您展开包含阶跃频率扫描测量的 Navigator 树的分支,您将在该分支中看到许多名为 Level、Gain、Relative Level 等的对象。这些是阶跃频率扫描测量的测量结果。还可以通过单击 APx 中 Graph 下面的窗口中的适当图标来选择它们(图 54)。

在阶跃频率扫描测量的情况下,有七种结果可用。如果您运行阶跃频率扫描测量并浏览结果,您将注意到七个结果中的六个显示为 XY 图形(例如,电平显示为电平与频率的图形)。这些被称为 XY 类型结果。集合中的结果之一偏差以条形图的形式显示,每个通道显示一个条形图 55。这些由单个值组成的后一种结果被称为仪表型结果。

每个测量都有不同的结果集合------有些具有所有 Meter 类型的结果,有些具有所有 XY 类型的结果,还有一些具有两种结果类型的组合。

现在让我们看看 LabVIEW 驱动程序是如何处理测量结果的。

打开 APx500 示例-简易仪表测量 VI(可从驱动器调色板的示例子调色板)并检查其前面板。忽略控制面板的橙色。这只是表示它们仍然与它们的类型 Defs 相关联。该 VI 设置为配置和运行位于信号路径 1 中的电平和增益测量(使用默认模板创建的新项目文件的默认值之一)。注意,所选测量指标设置为 3(信号路径 1 中电平和增益测量的位置)。

本项目中设置的电平增益配置控制将把模拟发生器设置为 100 mVrms 或 1 kHz -20 dBFS,并启用所有发生器通道。配置 APx500 应用程序以使用两个输入通道(在信号路径设置中)。现在运行 VI并观察测量结果集群的内容(图 56)。注意,它现在列出的路径名称为 Signal Path1,测量结果簇内

部的测量数组有一个元素------测量名称字段包含"Level and Gain"。在 Data 集群中还有两个名为"XY Results"和"Meter Results"的数组。注意,XY Results 数组是空的(这是有意义的,因为Level 和 Gain 没有 XY 类型的结果)。此外,仪表结果数组有两个元素:一个用于 Level 结果,另一个用于 Gain 结果。如图所示,仪表结果数组中的集群包含一个指示器,显示结果名称、单位,以及所有通道是否通过上限和下限。

如果你改变仪表结果数组的索引,你会注意到数组中有两个元素,对应着两个可用的结果(等级和增益)。集群内部是一个名为读数的数组,它又包含结果值的集群,以及 Passed Upper Limit 和Passed Lower Limit 指示器(图 57)。注意,Reading 数组中的元素数量对应于 APx 中选择的输入

通道数量(在本例中为两个)。

乍一看,测量结果簇显得复杂。然而,如果你研究它,你会发现数据的组织方式与测量结果的组织方式大致相同

组织在 APx500 应用程序内。此外,对于从 APx 获取测量数据来说,这是一种非常有效的方案,因为一次测量的所有结果都包含在一个集群中,该集群可以通过一条线传递给子 vis(图 58)。事实上,测量结果簇可以在一条信号路径中保存所有测量的结果。稍后将通过一个在 APx 中运行 Sequence 的示例来演示这一点。

注意,在图 58 中,只需要三个 vi 就可以打开对 APx 的引用,选择并运行电平和增益测量,并返回该测量的所有数据。

在驱动程序 VI 集合中有一个类似的示例,名为 APx500 example - simple Sweep Meas urement.vi。这个例子运行一个步进式频率扫描,并返回测量结果簇。如果运行它,您将看到返回的 XY和 Meter 结果与 APx 中用于此测量的结果相对应。

集合中有两个驱动程序 vi,它们简化了从 Measurement results 集群获取 Meter 结果和 XY 结果的过程。它们的上下文帮助如图 59 所示。

有关如何使用上述两个 vi 的示例,请参见名为 APx500 example - Simple Data Results 的示例 VI,该示例可从驱动程序菜单 Palette 的 Examples 子选项板中获得。

相关推荐
Gentle5865 分钟前
labview中连接sql server数据库查询语句
数据库·labview
Gentle5866 分钟前
labview用sql server数据库存取数据到一个单元格
数据库·labview
易召4 天前
练习LabVIEW第四十三题
labview
易召4 天前
练习LabVIEW第四十四题
labview
易召4 天前
练习LabVIEW第四十题
labview
易召5 天前
练习LabVIEW第三十五题
labview
易召6 天前
练习LabVIEW第三十六题
labview
易召7 天前
练习LabVIEW第三十九题
labview
易召7 天前
练习LabVIEW第三十七题
labview
易召7 天前
练习LabVIEW第四十二题
labview