基于LabVIEW的BeamGage自动化接口应用

设置

National Instruments LabVIEW可执行程序需要被配置为使用.NET 4框架。.NET允许自定义可执行程序的运行方式。可通过以下方式实现:

在LabVIEW安装目录中创建一个名为LabVIEW.exe.config的文本文件(例如:C:\Program Files\National Instruments\LabVIEW 2012\LabVIEW.exe.config)。使用文本编辑器(如记事本)编辑该文件,插入以下内容:

 

xml

<configuration><startupuseLegacyV2RuntimeActivationPolicy="true"><supportedRuntimeversion="v4.0.30319"/></startup></configuration>


启动与关闭(LabVIEW)

本示例基于LabVIEW 2013开发(可能需要根据您的环境进行调整)。示例假设您已经安装了BeamGage Professional。

  1. 在LabVIEW中新建一个空白VI,进入框图

  2. 右键打开功能面板,选择Connectivity->.NET->Constructor Node

  3. 放置Constructor Node后,LabVIEW会弹出选择.NET构造器的对话框。

  4. 指向BeamGage安装目录并选择Spiricon.Automation.dll程序集。

  5. 使用Spiricon.BeamGage.Automation.dll中的AutomatedBeamGage对象创建.NET构造器节点。

注意:

  • 默认构造器无需参数,将以"AutomationClient"为默认实例名启动BeamGage,且显示GUI。

  • 如果需要自定义实例名或禁用GUI,可以使用AutomationLabViewInjector类并传递两个参数:实例名(字符串)和GUI显示选项(布尔值)。

关闭自动化服务端需通过客户端完成。使用IAutomationInstance接口关闭服务端。以下是获取该接口并关闭服务端的LabVIEW代码片段:


控制BeamGage接口(LabVIEW)

以下示例展示如何通过自动化客户端调用BeamGage的Ultracal功能。

  1. 在LabVIEW的框图中创建事件结构并包裹在循环中。

  2. 在Ultracal事件中,获取IACalibration接口并调用其功能。

  3. 如果调用失败,会显示对话框,同时释放IACalibration对象,但程序继续执行直到停止事件被触发。


事件注册(LabVIEW)

大多数情况下,BeamGage数据的提取依赖于新帧数据的可用性。以下是注册事件的步骤:

  1. 构建AutomationFrameEvents对象,并传递所需的IAFrame接口(如FramePriorityFrameResultsPriorityFrame)。

  2. 使用Reg Event Callback元素为OnNewFrame事件注册回调VI。

  3. 创建并连接回调VI以响应新帧事件。


提取BeamGage结果(LabVIEW)

以下示例展示如何在回调VI中提取计算结果。

  • 在回调函数中,获取所需的数据并将工作推送到其他线程以避免阻塞BeamGage。

  • 关闭IAResultsPowerEnergy接口的引用,确保资源被及时释放。


提取BeamGage数据(LabVIEW)

以下示例展示如何在回调VI中提取帧数据:

  1. 使用ResultsPriorityFrame接口获取帧数据。

    • DoubleData属性:以摄像头的原始位深度显示数据,适合导出或显示。

    • FrameData属性:以32位格式存储数据,适合进一步计算。

  2. 获取SpatialResults接口中的PeakLocationXPeakLocationY数据,以及FrameInfoResults中的宽度和高度结果。

  3. 在主框图中,将数据与2D强度图和1D光束轮廓图相连接,并调整前面板以仿真BeamGage显示窗口。


部署

按照"设置"部分的说明,为客户端可执行程序创建.exe.config文件(例如,应用程序名为HelloWorld.exe时,配置文件名为HelloWorld.exe.config)。

注意:
LabVIEW应用程序生成器的技术限制要求应用程序文件(.exe和.exe.config)必须放置在BeamGage安装目录中。


生成于2024年2月20日,基于AutomationInterfaceAPI,使用Doxygen 1.8.18

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/504095.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL概述

SQL SQL&#xff08;Structured Query Language&#xff09;是“结构化查询语言”&#xff0c;它是对关系型数据库的操作语言。它可以应用到所有关系型数据库中。如&#xff1a;MySQL、Oracle、SQL Server 等。除了 SQL 标准之外&#xff0c;大部分 SQL 数据库程序都拥有它们自…

WandB使用笔记

最近看代码&#xff0c;发现代码中有wandb有关的内容&#xff0c;搜索了一下发现是一个模型训练工具&#xff0c;然后学习了一下&#xff0c;这里记录一下使用过程&#xff0c;方便以后查阅。 WandB使用笔记 登录WandB 并 创建团队安装 WandB 并 登录模型训练过程跟踪模型版本管…

中国科技统计年鉴EXCEL版(2021-2023年)-社科数据

中国科技统计年鉴EXCEL版&#xff08;2021-2023年&#xff09;-社科数据https://download.csdn.net/download/paofuluolijiang/90028724 https://download.csdn.net/download/paofuluolijiang/90028724 中国科技统计年鉴提供了从2021至2023年的详尽数据&#xff0c;覆盖了科技…

Cursor无限续杯——解决Too many free trials.

前情提要 我们都知道Cursor对新用户是有14天且500条免费限制的。 一般情况下&#xff0c;当14天过期&#xff0c;是可以注销账户再重新注册&#xff0c;这样就可以继续拥有14天的体验时长。 但是&#xff01;&#xff01;如果使用超过500次&#xff0c;Cusor就会把你的电脑I…

深入学习RabbitMQ的Direct Exchange(直连交换机)

RabbitMQ作为一种高性能的消息中间件&#xff0c;在分布式系统中扮演着重要角色。它提供了多种消息传递模式&#xff0c;其中Direct Exchange&#xff08;直连交换机&#xff09;是最基础且常用的一种。本文将深入介绍Direct Exchange的原理、应用场景、配置方法以及实践案例&a…

Mysql--基础篇--事务(ACID特征及实现原理,事务管理模式,隔离级别,并发问题,锁机制,行级锁,表级锁,意向锁,共享锁,排他锁,死锁,MVCC)

在MySQL中&#xff0c;事务&#xff08;Transaction&#xff09;是一组SQL语句的集合&#xff0c;这些语句一起被视为一个单一的工作单元。事务具有ACID特性&#xff0c;确保数据的一致性和完整性。通过事务&#xff0c;可以保证多个操作要么全部成功执行&#xff0c;要么全部不…

Linux下文件重定向

文章目录 一 重定向的基本使用1. 标准输出重定向2. 标准错误输出重定向3. 同时重定向标准输出和标准错误输出4. 输入重定向&#xff08;<&#xff09; 二 重定向基本原理1. 文件描述符概念2.什么是文件描述符3. 文件描述符的分配规则初始分配与默认对应关系动态分配规则 4. …

Android车载音频系统目录

目录 第一章 1.1 Android Automotive&#xff08;一&#xff09; 1.2 Android Automotive&#xff08;二&#xff09; 1.3 Android Automotive&#xff08;三&#xff09; 第二章 2.1 Android车载音频系统概览 2.2 车载音频焦点 2.3 车载音频配置 2.4 Audio control HAL…

【Linux】深入理解文件系统(超详细)

目录 一.磁盘 1-1 磁盘、服务器、机柜、机房 &#x1f4cc;补充&#xff1a; &#x1f4cc;通常网络中用高低电平&#xff0c;磁盘中用磁化方向来表示。以下是具体说明&#xff1a; &#x1f4cc;如果有一块磁盘要进行销毁该怎么办&#xff1f; 1-2 磁盘存储结构 ​编辑…

Spring项目创建流程及配置文件bean标签参数简介

1. 项目搭建流程 1. pom.xml中引入依赖Spring-webMVC <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><…

PHP进阶-在Ubuntu上搭建LAMP环境教程

本文将为您提供一个在Ubuntu服务器上搭建LAMP&#xff08;Linux, Apache, MySQL, PHP&#xff09;环境的完整指南。通过本文&#xff0c;您将学习如何安装和配置Apache、MySQL、PHP&#xff0c;并将您的PHP项目部署到服务器上。本文适用于Ubuntu 20.04及更高版本。 一、系统更新…

Web应用安全-漏洞扫描器设计与实现

摘 要 随着Web2.0、社交网络、微博等一系列新型的互联网产品的诞生&#xff0c;基于Web环境的互联网应用越来越广泛&#xff0c;企业信息化的过程中各种应用都架设在Web平台上。Web应用的迅速发展也引起黑客们的强烈关注&#xff0c;接踵而至的就是Web安全威胁的凸显&#xff…

【漏洞工具】小米路由器任意文件读取漏洞python图形化框架利用工具(poc|exp)

there is no tomorrow 工具利用 漏洞扫描 漏洞利用 poc 本文工具、源码获取 因本工具涉及到源码分享&#xff0c;如有需求&#xff0c;请私聊圈主 文笔生疏&#xff0c;措辞浅薄&#xff0c;望各位大佬不吝赐教&#xff0c;万分感谢。 免责声明&#xff1a;由于传播或利用…

【Logstash03】企业级日志分析系统ELK之Logstash 过滤 Filter 插件

Logstash 过滤 Filter 插件 数据从源传输到存储库的过程中&#xff0c;Logstash 过滤器能够解析各个事件&#xff0c;识别已命名的字段以构建结构&#xff0c; 并将它们转换成通用格式&#xff0c;以便进行更强大的分析和实现商业价值。 Logstash 能够动态地转换和解析数据&a…

游戏关卡设计的常用模式

游戏关卡分为很多种&#xff0c;但常用的有固定套路&#xff0c;分为若干种类型。 关卡是主角与怪物、敌方战斗的场所&#xff0c;包括装饰物、通道。 单人游戏的关卡较小&#xff0c;偏线性&#xff1b; 联机/MMO的关卡较大&#xff0c;通道多&#xff0c;自由度高&#xf…

用OpenCV实现UVC视频分屏

分屏 OpencvUVC代码验证后话 用OpenCV实现UVC摄像头的视频分屏。 Opencv opencv里有很多视频图像的处理功能。 UVC Usb 视频类&#xff0c;免驱动的。视频流格式有MJPG和YUY2。MJPG是RGB三色通道的。要对三通道进行分屏显示。 代码 import cv2 import numpy as np video …

用户界面软件02

基于表单的用户界面 在“基于表单的用户界面”里面&#xff0c;用户开始时选中某个业务处理&#xff08;模块&#xff09;&#xff0c;然后应用程序就使用一系列的表单来引导用户完成整个处理过程。大型机系统上的大部分用户界面都是这样子的。[Cok97]中有更为详细的讨论。 面…

使用Registry explore实现法医检查练习

Windows Forensics 1&#xff08;windows 取证&#xff09; 第一题&#xff1a; 关于用户的基本都在sam注册表中&#xff0c;所以使用Registry explore&#xff0c;添加一个sam进来检查&#xff0c;通常sam注册表都是在C:\Windows\System32\config中 接着就可以开始我们的检验…

Linux服务器网络不通问题排查及常用命令使用

在PVE主机上创建虚拟机&#xff0c;并配置静态ip和dns后&#xff0c;主机可以正常访问网络&#xff0c;但是在宿主机或者其他机器上都无法访问该虚拟机。 检查ip是否联通且端口是否开启 如果ip无法ping通&#xff0c;可能是静态ip配置、网卡或桥接设置问题。 [k8slocalhost …

道品科技智慧农业与云平台:未来农业的变革之路

随着全球人口的不断增长&#xff0c;农业面临着前所未有的挑战。如何在有限的土地和资源上提高农业生产效率&#xff0c;成为了各国政府和农业从业者亟待解决的问题。智慧农业的兴起&#xff0c;结合云平台的应用&#xff0c;为农业的可持续发展提供了新的解决方案。 ## 一、智…