Two Methods of Calling MATLAB Code in LabVIEW

Dec. 28, 2022

LabVIEW官方以求解Lorenz Attractor differential equation(洛伦兹吸引子微分方程)为例,提供了两个调用MATLAB代码的范例,对应着两种调用MATLAB代码的方式。

第一个范例为MATLAB script node - Lorenz Diff Eq.vi,该示例是通过MATLAB script node模块承载MATLAB代码。在MATLAB script node模块中调用的函数需要传入提前传入绝对地址。

该范例的程序框图为:

image-20221228202953549

所对应的前面板为:

image-20221228203111483

第二个范例是MATLAB node - Lorenz Diff Eq.vi,该范例并不在LabVIEW中键入MALTAB代码,而是直接通过地址来调用函数文件。

程序框图为:

image-20221228203622475

前面板为:

image-20221228203642294

直接调用的函数LorenzDiffEq.m

1
2
3
4
5
6
7
8
9
10
11
12
function[t,Y] = LorenzDiffEq()
    y= [1, 1, 1];
    n = 30 / 0.05;
    
    % Generate a vector of values which are 
    % linearly spaced between 0 and 30
    T = linspace(0, 30, n);
    
    % Solve nonstiff differential equations — low order method
    [t, Y] = ode23('LorenzEqs',T, y );

end

使用第二种方式需要注意的是: