当前位置:首页 » 编程软件 » labview与matlab混合编程

labview与matlab混合编程

发布时间: 2023-07-02 16:29:07

㈠ 在LabVIEW中调用MATLAB来进行图像处理应该如何实现

这个问题我曾经在项目中做过,印象中是一个难点,不太容易实现。
首先,LV调用MTLAB有两种方式,第一,直接调用MATLAB,在后台进行计算;第二,使用matlab
script,按照帮助中的修改数据类型,这种方式实际并没有启动MATLAB,这样会快一些,也简单一些。
两种方式各有利弊,如果你的工程很大,那么第二种方式显然不太合适,我当初用的也是第一种方式。
你可以看看网络文库中的这3篇文档,当时我是按这几篇的内容来实现调用的,希望帮助到你。
LabVIEW中MATLAB的调用
LabVIEW与Matlab的混合编程
在LabView中使用MATLAB脚本节点

㈡ labview和matlab是如何结合的

1 基本原理

ActiveX自动化是基于组件对象模型COM(Component Object Model)的技术,允许应用程序或组件控制另一
个应用程序或组件的运行,它包括自动化服务器和自动化控制器。MATLAB支持ActiveX自动化技术。通过使用
MATLAB自动化服务器功能,可以在其它应用程序中执行MATLAB命令,并与MATLAB的工作空间进行数据交换。因此
可以借助这一特性,把LabVIEW与MATLAB结合,充分利用MATLAB提供的大量高效可靠的算法和LabVIEW的图形化编
程能力,混合开发出功能强大的应用软件。

2 应用举例

在混合编程中,通常用LabVIEW设计用户图形界面,负责数据采集和网络通信;MATLAB在后台提供大型算法供
LabVIEW调用。

2.1 方法一:使用MATLAB Script节点

为了简化调用过程,LabVIEW提供了MATLAB Script节点。LabVIEW使用ActiveX技术执行该节点,启动一个
MATLAB进程。这样用户就可以很方便地在自己的LabVIEW应用程序中使用MATLAB,包括执行MATLAB命令、使用功能
丰富的各种工具箱,如神经网络工具箱(Neural Network Toolbox)、优化工具箱(Optimization Toolbox)。
值得注意的是:LabVIEWgn MATLAB之间的数据通信仅支持Real、RealVector、RealMatrix、Complex、
VectorComplex、Matrix六种格式的数据,且必须根据具体情况进行选择。

当开发涉及工业控制的应用程序时,常常由于控制参数的非线性变化,而无法建立合适的模型。由于此类问
题,神经网络提供了一条有效的解决途径。

在LabVIEW开发环境下新建一个三层BP神经网络的VI程序,程序框图见图1。网络结构部分主要设置隐层
(Hidelay)神经元的个数、传递函数(Transfer Function)以及网络训练算法(Algorithm)。经过样本数据
(Training Data)训练过的网络,即可进行仿真测试了。MATLAB脚本程序可以在MATLAB环境下调试,再使用
MATLAB Script节点导入MATLAB脚本;也可以直接在MATLAB Script节点中编写。位于
Function>>Mathematics>>Formula模板中的MATLAB Script节点可以导入MATLAB脚本。图1中的脚本程序使用CASE
语句进行传递函数和训练算法的选择。MATLAB Script节点中神经网络的输入层和隐层之间的权值矩阵inweight应
指定为RealMatrix,在LabVIEW中对应的数据类型是二维实数据组Net.I-Weight。各变量数据类型见表1。

表1 MATLAB Script节点输入、输出变量的数据类型

变量名 LabVIEW数据类型 MATLAB数据类型
size of algorithm Double floating point numeric Real
t outweight hideb outb result 1D array double floating numeric Real Vector
p data inweight Multidimensional array double floating point numeric Real Matrix

在此程序中,得到的BP网络各层的权值矩 阵、阈值向量和传递函数三类参非常有用的,它们决定了神经网络
的结构与特性。因此当神经网络训练好后,可以直接使用这些参数处理新的数据,得到预测值,而不必重新调用
MATLAB。这样程序的运行效率会更高。另一方面,将调试好的神经网络VI创建成一个子VI,作为模块保存,当需
要更新网络时,可以随时调用。

虽然通过MATLAB Script节点进行通信比较易于实现,但以这种方式调用MATLAB时,在任务栏中将出现一个
MATLAB图标,单击该图形会打开MATLAB窗口,在其中可以任意输入。通常,这会干扰前台程序的运行,甚至造成
程序的崩溃。另一方面,当MATLAB Script节点中的脚本执行完后,MATLAB也不能自动关闭。

热点内容
解压带教程 发布:2025-02-08 01:16:33 浏览:758
什么是程序存储器 发布:2025-02-08 01:05:01 浏览:313
解压包手机安装 发布:2025-02-08 00:49:29 浏览:960
詹雯婷访问 发布:2025-02-08 00:42:02 浏览:309
php无限分类树 发布:2025-02-08 00:42:01 浏览:814
clang编译命令 发布:2025-02-08 00:41:24 浏览:128
数据结构c语言版算法 发布:2025-02-08 00:28:19 浏览:663
python环境管理 发布:2025-02-08 00:26:51 浏览:999
个人简历源码 发布:2025-02-08 00:26:43 浏览:14
html5canvas上传图片 发布:2025-02-08 00:20:44 浏览:169