版权声明
无需授权即可转载
Labview调用.Net文件
之前生成得.Net文件夹里面有两个.Net文件,分别是MagicSquareComp.dll和MagicSquareCompNative.dll,通过文件夹里面的readme文件我们可以知道他们之间的区别,主要在于对MWArray文件的调用
MagicSquareComp.dll
-contains the generated component using MWArray API.
MagicSquareCompNative.dll
-contains the generated component using native API.
这里我们使用MagicSquareComp.dll文件,通过LabVIEW调用.Net文件的方法也很简单,在Block Diagram下面通过Connectivity » .NET » Constructor Node
弹出选择.Net Constructor选项框
选择之前生成的.Net文件,构造器选择Class1(),点击OK
这样我们就已经成功将.Net文件加载到LabVIEW中,接下来我们通过它的方法和属性来实现这个函数的功能
方法和属性
.Net文件得加载可以理解为对一个类的实例化,实例化之后就可以使用这个类得属性和方法,它的方法就是Matlab里面得函数,在这节点得new reference连接端右键选择它得方法,我们可以看到这个节点有几个可以使用得方法
其中makesquare(MWArray x)就是matlab里面得那个函数,括弧里面是输入变量
x是MWArray得类型,这个类型是Matlab特有得数据类型,为了可以正确使用这个数据类型,我们需要使用上一节说过得MWArray得类文件,调用方法与之前一样,调用后,选择如下图所示得构造器
之后在输入端给定一个常量,这里为了验证函数得正确性,常量为5
接下来在输出端,我们可以直接使用MWArray得ToString方法获得最终得结果
获取矩阵形式得结果
通过ToString得方法我们只是得到了一串字符串,对于后续结果得使用不是很方便,接下来我们通过ToArray得方法得到数组得结果
要想得到正确得数组,我们首先需要知道数组得行列数分别是多少,这里可以通过Dimensions得属性得到,还可以通过NumberofDimensions得到数组得维度
从这里得知,结果是个5行5列得二维数组,所以需要用两个For循环来构建最终得结果,最终得程序如下
实时更改输入
我们使用一个While循环实现实时更改输入获取最终得输出,通过Dimensions得数值来作为For循环得循环次数,最终得程序如下
下一篇我们看看如何应对多个输出,下次见
领取专属 10元无门槛券
私享最新 技术干货