LabVIEW调用MatLab程序进行混合编程的实用方法

2025-05-13 08:06:31

LabVIEW适合开发设备采集和控制程序,虽然也提供了大量的数学运算函数,但与MatLab的功能不可同日而傥态尬锪语。如果需要在LabVIEW中调用MatLab程序,有几种方法:1.MatLab脚本节点 2.DLL 3.COM。MatLab脚本节点最容易实现,但前提是目标机器上必须安装MatLab,如果是简单的就用MatLab里的几条语句,不值得这样做;DLL是利用编译器将MatLab程序封装成函数库,但MatLab编译器直接封装出来的DLL在LabVIEW中基本不可用,因为MatLab封装出来的DLL是基于mxArray数据类型的,LabVIEW没有或找不到与之对应的数据类型(用DLL一个可行的办法是实用VC/VC++进行二次封装,但费时费力);COM也是MatLab能够封装成的一种形式,而且是基于对象的,可以在LabVIEW中成功调用。本文主要介绍利用COM实现LabVIEW和MatLab混合编程。

工具/原料

LabVIEW 2012及更新版本

MatLab R2015a及更新版本

MatLab生成COM组件

1、MatLab中新建脚本文件,写入函数。这里简单的写一个求平方的函数作为例子。

LabVIEW调用MatLab程序进行混合编程的实用方法

2、点击“应用程序”->"应用程序编译器"。

LabVIEW调用MatLab程序进行混合编程的实用方法

3、在DEPLOYMENT窗口中,依次点击“NEW”->“Liabrary Porject”->“Generic COM co罪焐芡拂mponent”-> 添加需要的.m文件->“Package”。

LabVIEW调用MatLab程序进行混合编程的实用方法

4、等待打包完成,MatLab会自动跳转到生成的文件夹,在for_testing文件夹下可看到生成的.dll文件。

LabVIEW调用MatLab程序进行混合编程的实用方法
LabVIEW调用MatLab程序进行混合编程的实用方法

LabVIEW中调用COM组件

1、LabVIEW后面板,函数面板中依次点击“Connectivity”->“ActiveX”,将“自动打开”和“调用节点”函数拖入后面板。

LabVIEW调用MatLab程序进行混合编程的实用方法

2、在“自动打开”函数上右击,浏览到MatLab生成的.dll文件。

LabVIEW调用MatLab程序进行混合编程的实用方法
LabVIEW调用MatLab程序进行混合编程的实用方法

3、已自动定位到类库,选择库中的对象,确定。

LabVIEW调用MatLab程序进行混合编程的实用方法

4、连接调用节点的引线,调用节点的方法中选择需要的函数(本例中是test函数)。

LabVIEW调用MatLab程序进行混合编程的实用方法

5、给函数的输入变量和输出变量赋值,可以看到变量的名称与我们在MatLab中建立的函数的变量名称完全一致,但多了一个变量nargout,这个变量是指输出变量的数量,一般为1就好。

LabVIEW调用MatLab程序进行混合编程的实用方法

6、前面板输入参数,运行,结果完全正确。

LabVIEW调用MatLab程序进行混合编程的实用方法

7、最后说非常重要的一点:如果要使用数组作为变量进行计算,必须使用二维数组!即使是一维数组也要转化成二维数组!这是MatLab本身的数据类型所决定的。

LabVIEW调用MatLab程序进行混合编程的实用方法
LabVIEW调用MatLab程序进行混合编程的实用方法
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢