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采集软件相同的数据。使用“所选通道”对象更改通道将显示该通道的数据。
审核编辑:郭婷
-
LabVIEW
+关注
关注
1970文章
3654浏览量
323313 -
数据采集
+关注
关注
38文章
6053浏览量
113620
发布评论请先 登录
相关推荐
评论