使用LabVIEW和DATAQ仪器的ActiveX控制进行数据采集

描述

LabVIEW 是 许多 数据 采集 应用 的 常用 编 程 环境。DATAQ 仪器 硬件 产品 可以 通过 应用 我们 的 ActiveX 软件 工具 在 LabVIEW 下 进行 编 程。本 应用 说明 介绍 了 一个 分 步 过程, 可 用于 从 LabVIEW 访问 任何 DATAQ Instruments ActiveX 控件。此 程序 使用 WinDaq 控制, 该 控制 允许 WINDAQ® 采集 软件 采集 的 数据 同时 提供 给 LabVIEW。

打开一个新的LabVIEW项目(这通常是LabVIEW启动时的默认设置)。

选择序列结构:

数据采集

序列结构强制图按特定顺序执行,并将图分成逻辑执行块。在此示例中,序列结构将用于在使用 WinDaq 控件之前“启动”该控件。

将选定的序列结构插入到“关系图”窗口中:“

数据采集

关系图”窗口是项目的源代码。在此窗口中绘制的图表将确定执行的内容,顺序等。这是运行前面板的“幕后”工作。

将ActiveX 容器插入前面板前面板

数据采集

将成为用户界面。ActiveX 容器 是 将 ActiveX 控件 插入 LabVIEW 所必需的。ActiveX 控件基于服务器-客户端关系工作。有关LabVIEW如何与ActiveX控件配合使用的说明,请参阅LabVIEW在线帮助文档中的“ActiveX简介”次要主题。可以通过在索引中搜索“ActiveX,简介”来找到此部分。

右键单击容器,然后选择“插入 ActiveX 对象。..”。

数据采集

滚动以查找WinDaq控件,选择它,然后单击“确定”。这将为您提供系统上所有当前可用的 ActiveX 控件的列表。

数据采集

在“关系图”窗口中,右键单击新创建的控件,选择“显示”,然后选择“标签”以显示它是什么。

数据采集

这将使识别对象/图片代表的内容变得更加容易。

单击工具工具箱中的接线工具。

数据采集

接线工具可用于创建在程序执行期间要遵循的“路径”。这些 路径 告诉 LabVIEW 从 一个 对象 获取 信息 并 发送 到 另一 个 对象。

将 WinDaq 控件连接到序列。

数据采集

这将使 WinDaq 控件可用于序列中的所有帧。

在前面面板中,插入“控件”工具箱中的水平幻灯片。

数据采集

水平幻灯片将用于选择要“观看”的频道(即,从中读取数据并在屏幕上显示的频道)。

在工具工具箱中,单击操作值工具。

数据采集

此工具允许您更改对象的某些属性。此工具在运行时用于操作前面板中的控件。

现在将滑块的值从 1 更改为 2。然后,右键单击并将表示形式更改为 I16(字)。

数据采集

要更改值,请单击它们并键入新值。表示形式更改为 I16(字),因为这是与将用于确定通道的 WinDaq 控件的属性最匹配的基础整数类型。特定属性或方法使用的数据类型可以在 DATAQ 网站上提供的 ActiveX 控件帮助文件中找到。

插入数字指示器。

数据采集

此指示器将仅向用户显示信息,不允许他们更改信息。该指示器将显示通道总数。

插入另一个数字指示器。此指示器将显示来自 WinDaq 控件的实际数据。

右键单击每个控件并按如下方式标记它们:

数据采集

单击“标签”后,开始键入以设置标签。

在“函数”工具箱的“关系图”窗口中,依次单击“通信”、“ActiveX”和“调用节点”。

数据采集

调用节点是从 ActiveX 控件调用方法的对象。它允许您为它提供可能需要传递给方法的任何数据,并返回方法调用的结果。

将对象插入序列中,并将 WinDaq 控件(使用序列上的黑色方块连接到序列)连接到调用节点的参考点的导线。

数据采集

这将允许调用节点“知道”哪些方法可用,需要发送哪些数据以及将返回哪些数据。

右键单击“调用节点”,然后选择“启动”方法。

数据采集

启动方法告知 WinDaq 控件开始获取数据。

右键单击序列,然后单击“在后面添加帧”。

数据采集

这将添加一个单独的“块”来绘制将在前一帧之后执行的图表。

在序列中插入属性节点,并使用电线将其连接到 WinDaq 控件。

数据采集

使用箭头工具在序列帧内移动“通道计数”对象。

数据采集

右键单击“属性节点”,然后选择“通道计数”属性。

数据采集

属性返回可从中读取数据的通道总数。

右键单击“通道计数”对象并将其“表示形式”更改为I16。

数据采集

右键单击“通道选定项”对象并创建“属性节点”。

数据采集

属性节点“连接”到其父对象,并允许您在程序运行时更改父对象的属性。

在序列中移动此节点。右键单击它并将其属性更改为“最大值”。

数据采集

使用“布线”工具创建导线以连接序列中的对象,如下所示:“

数据采集

属性节点”设置“通道选定”对象的最大值。这反过来将阻止用户尝试从越界通道读取数据。通道计数指示器还将显示通道总数。

在此帧之后将另一帧添加到序列中。

在序列中插入一个 while 循环。

数据采集

由于 创建 本 示例 的 LabVIEW 版本 不支持 事件, 因此 将 使用 while 循环 持续 请求 来自 WinDaq ActiveX 控件 的 数据。

将调用节点对象插入到 while 循环中。将“通道选定项”对象和数据对象移动到 while 循环中。

数据采集

通过在 while 循环内移动对象,它们将在 while 循环的每个“轮次”中执行(以及其中的任何其他步骤)。

创建一条线路以将调用节点连接到 WinDaq 控件。然后,右键单击它并选择GetScaledData方法。

数据采集

GetScaledData 方法将用于以软件中指定的校准工程单位从 WinDaq 获取数据。有关 ActiveX 控件的属性和方法的详细信息,请参阅 ActiveX 控件帮助文件。

插入递减对象以将信号从“通道选定”对象递减到“数据”对象,并按如下方式连接它:“

数据采集

通道选定”对象将允许用户选择通道(1 到最大值)。该对象将返回用户的选择,但实际通道少 1,因为 WinDaq 控件枚举从零开始的通道(从零开始,而不是从 1 开始)。

按如下方式连接“通道选定”对象和数据“对象:

数据采集

这将允许”所选通道“选择要从哪个通道获取数据,并且 GetScaledData 返回的数据将显示在”数据“指示器中。

插入一个布尔常量,在插入对象后单击对象,使用运算值工具将其设置为 true,然后将其连接到 while 循环的条件终端。

数据采集

这将导致 while 循环永久运行,或者直到通过单击“停止”按钮强制停止程序。通常,此处使用布尔控件,以便程序可以正确完成。

在此帧之后将另一个帧添加到序列中。

在序列中插入调用节点对象,并将其连接到 WinDaq 控件。将其方法更改为“停止”。

数据采集

此方法告知 WinDaq 控件停止获取数据。这不会按预期执行,因为 while 循环永远不会终止以达到此步骤。当程序被强制停止时,它不会继续到此帧。

像往常一样启动WinDaq,然后返回前面板中的LabVIEW,并运行项目。

数据采集

您应该会看到数据指示器显示与WinDaq采集软件相同的数据。使用“所选通道”对象更改通道将显示该通道的数据。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分