LabVIEW使用Python MathWorks® MATLAB®软件和C/C++

简介: LabVIEW使用Python MathWorks® MATLAB®软件和C/C++

LabVIEW使用Python MathWorks® MATLAB®软件和C/C++


LabVIEW与其他编程语言的集成对于构建测试系统的工程师来说是一项非常实用的功能。将Python、MathWorksMATLAB软件、C/C++和.NET等编程语言与LabVIEW的图形化数据流相结合,能够集各语言之所长,在更短的时间内构建灵活的测试系统。


从LabVIEW调用Python脚本


过去数年,Python的应用日益普及且不断扩展,为各种应用提供了数十万个现成的代码库。将Python集成到LabVIEW中,即可将Python灵活的脚本功能与LabVIEW的系统设计工具相结合。


通过Python节点,用户可在LabVIEW的程序框图中本地调用Python脚本。这使得两种编程语言之间能够以低延迟实现互操作。

7d0f218a823f2de2d9e64fc1ab3ec5ed.png



在Python节点中,可以在调用函数时指定使用的版本和Python路径,从而能够访问安装在自定义目录中的Python。这意味着能够使用多个Python节点来打开基于不同版本的多个会话或打开存储在自定义目录中的可执行文件。


LabVIEW2022 Q3新增了对将Python类对象作为参数进行传递的支持。Python节点上的引用句柄输出表示一个Python类对象,可以将其作为输入传递给另一个Python节点,从而对类对象进行操作。


b4956cfdb90f8f09104ff85093d7cdfe.png


LabVIEW2023 Q1新增功能用于通过Anaconda和Venv调用Python虚拟环境。


为改进Python与LabVIEW之间的互操作性,NI一直持续投资,并计划在2023年及未来不断进行更新。


将LabVIEW和MathWorksMATLAB软件集成


常见的数值分析、信号处理和高等数学编程方法同样可用于调用使用MATLAB开发的.m文件。在图形化编程环境中使用MATLAB节点可将这些文件组合到一个VI中,从而将MATLAB的分析功能集成到测试和测量系统中。

2ff1e018a87205eba4b2f0290e2d2c94.png



此外,LabVIEW现可支持用户选择特定的MATLAB版本来执行程序。


65bbe89ccb3ba2a79a425aee2abb7d2a.png


从LabVIEW2022 Q3开始,LabVIEW增加了新的调试功能,比如在MATLAB编辑器中添加断点;通过单步执行即可从LabVIEW切换到.m文件,便于调试代码;或者在LabVIEW中启动MATLABIDE,来随时编辑.m文件。

88b9cc412a551696a7ce3cb4a17c08d6.png



在LabVIEW中调用C/C++DLL


使用LabVIEW时,可通过调用动态链接库(DLL)或共享库来复用现有代码。


例如,如果需要在LabVIEW中复用C/C++共享库,则可使用调用库函数节点来调用这个共享库。为简化外部库的导入,LabVIEW还提供了导入共享库向导。该向导可自动创建或更新LabVIEW包装VI项目库,以便集成到LabVIEW程序框图中。


cdb1858a5ab4abb97cf765f7860e83e3.png


在LabVIEW中调用.NET程序集


在LabVIEW中复用现有代码的另一种方法是调用.NET程序集。


如要访问.NET程序集,请使用构造器节点。将构造器节点置于程序框图时,会出现一个对话窗口,以便用户选择适当的.NET程序集。LabVIEW可自动识别所有方法和属性,并通过“方法和属性节点”显示这些方法和属性。


ea7e0535c3fe9fa904fc6d774f842d70.png



LabVIEW可加载针对.NETCLR 4.0或较早版本的.NET程序集。不过,LabVIEW会使用.NETCLR 4.0版本加载所有程序集。


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

相关文章
|
4月前
|
JSON 数据格式 Python
【2023最新】Matlab 保存JSON数据集文件,并用Python读取
本文介绍了如何使用MATLAB生成包含数据和标签的JSON格式数据集文件,并展示了用Python读取该JSON文件作为训练集的方法。
145 1
|
4月前
|
算法框架/工具 C++ Python
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
333 0
|
5月前
|
编译器 开发工具 C++
【Python】已解决error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build
【Python】已解决error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build
3044 0
|
2月前
|
C++ Python
探索Python与C/C++混合编程的艺术
探索Python与C/C++混合编程的艺术
50 1
|
2月前
|
测试技术 数据安全/隐私保护 开发者
自动化测试的奥秘:如何用Selenium和Python提升软件质量
【9月更文挑战第35天】在软件开发的海洋中,自动化测试是那艘能引领我们穿越波涛的帆船。本文将揭开自动化测试的神秘面纱,以Selenium和Python为工具,展示如何构建一个简单而强大的自动化测试框架。我们将从基础出发,逐步深入到高级应用,让读者能够理解并实现自动化测试脚本,从而提升软件的质量与可靠性。
|
2月前
|
存储 IDE 开发工具
编写Python参考手册速查软件(一)
编写Python参考手册速查软件(一)
52 0
|
2月前
|
Python
编写Python参考手册速查软件(二)
编写Python参考手册速查软件(二)
36 0
WK
|
3月前
|
机器学习/深度学习 Java 程序员
为什么Python比C++慢很多?
Python相较于C++较慢主要体现在:动态类型系统导致运行时需解析类型,增加开销;作为解释型语言,逐行转换字节码的过程延长了执行时间;自动内存管理和垃圾回收机制虽简化操作但也带来了额外负担;全局解释器锁(GIL)限制了多线程性能;尽管Python库方便灵活,但在性能上往往不及C++底层库。然而,Python在某些领域如数据分析、机器学习中,凭借其高级别抽象和简洁语法仍表现出色。选语言需依据具体应用场景和需求综合考量。
WK
99 1
|
4月前
|
数据采集 开发工具 Python
海康威视工业相机SDK+Python+PyQt开发数据采集系统(支持软件触发、编码器触发)
该系统基于海康威视工业相机SDK,使用Python与PyQt开发,支持Gige与USB相机设备的搜索及双相机同时显示。系统提供软件触发与编码器触发模式,并可在数据采集过程中实时保存图像。此外,用户可以调节曝光时间和增益,并进行信息输入,这些信息将被保存至配置文件以便下次自动加载。参数调节与实时预览等功能进一步增强了系统的实用性。
298 1
|
4月前
|
Unix C语言 C++
Python调用C/C++
Python调用C/C++
28 2
下一篇
DataWorks