如何在MathWorks,Inc.MATLAB®软件开发环境与LabVIEW之间进行数据传输

更新 Aug 24, 2023

适用于

软件

  • LabVIEW Full
  • LabVIEW Professional
  • LabVIEW MathScript Module

问题详述

我有一个通过MATLAB®软件编写的脚本,有哪些方法能够实现LabVIEW与MathWorks,Inc.MATLAB®这两个不同软件环境之间的数据共享?

解决方案

从MATLAB®环境和LabVIEW导入/导出数据有多种方法可供选择。

LabVIEW中的MATLAB®脚本节点

自LabVIEW 5.1版本后, LabVIEW完整版开发系统已将MATLAB®脚本节点包含在内,您可以在脚本与公式(Scripts&Formula VIs)面板中找到该节点 。 MATLAB®脚本节点令LabVIEW可以通过ActiveX对MATLAB®软件进行调用。您需要在LabVIEW所在的计算机上安装有效的MATLAB®许可证以保证该功能的正常使用。

通过使用MATLAB®脚本节点,您可以在LabVIEW中以编程的方式运行MATLAB®软件。您可以在节点中输入MATLAB®脚本,或将已存在的MATLAB®代码导入节点。

LabVIEW MathScript RT模块

MathScript RT模块是一种松散类型的编程语言,它与大多数基于文本的文件环境同义。自LabVIEW 8.0版本后,LabVIEW MathScript RT作为LabVIEW完整版和专业版开发系统的附加模块,需要单独进行授权。

您可以通过在LabVIEW中使用MathScript RT模块将图形化编程与面向数学的文本编程相结合。与MATLAB®脚本节点不同,MathScript RT模块不会调用MATLAB®软件环境,因此您无需安装MathWorks,Inc.MATLAB®软件或获取MATLAB®许可证。

通过使用该节点,您可以在LabVIEW中无缝运行现有的自定义.m文件或​​从头开始创建一个.m文件,并为其添加实时系统对于其他环境功能的支持(Real-Time support among other environment features) 。请查看MathScript RT模块的LabVIEW帮助 以了解该模块所包含的可用功能列表。

MATLAB®数据插件

通过使用MATLAB®数据插件 ,您可以导入和导出级别为4和5的MATLAB®文件,并直接读取* .MAT文件。若您需要在LabVIEW中使用现有的* .MAT数据集或在MATLAB®软件中使用通过LabVIEW创建的数据集,该插件是一个很好的选择。

数据传输选项

NI为您提供了一个范例程序 ,该范例允许用户在MathWorks,Inc.MATLAB®软件中读取LabVIEW生成的TDM / TDMS文件。此范例使用了一个TDM C动态链接库(DLL)和与其相匹配的C头文件,这些文件可与MATLAB®结合使用。

对于所有版本的LabVIEW而言,MATLAB®与LabVIEW之间的数据传输均可以通过使用MATLAB®将数据保存到文件中并使用LabVIEW直接读取文件中数据的方法来实现,反之亦然。在MATLAB®环境中, 您可以使用Save命令以二进制(* .mat)或ASCII格式保存数据。另一方面, 使用Load命令可以将数据读回程序。


MATLAB®是The MathWorks,Inc的注册商标。列出的其他产品和公司名称是其各自公司的商标和商品名称。

相关信息

合并数据传输选项
若需要以ASCII格式保存矢量或矩阵X并以制表符作为分隔符,请在MATLAB®环境的命令窗口中或m脚本文件中输入以下内容:
>> SAVE filename X -ascii -double -tabs
该命令将创建一个名称为filename的文件,并将以制表符分隔的数据X以ASCII的格式存入该文件。使用Programming»File I / O选板上的Read From Spreadsheet File VI将该文件导入LabVIEW。

若要加载数据,请在MATLAB®环境的命令窗口或m脚本文件中输入以下内容:
>> LOAD filename