微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 学习LabVIEW(四)——MATLAB script节点

学习LabVIEW(四)——MATLAB script节点

时间:01-09 来源:互联网 点击:
LabVIEW可以在程序中通过MATLAB script节点的方式实现G语言和MATLAB语言的混合编程,这是妇孺皆知的。大家都喜欢它,因为对于一些复杂的公式,用LabVIEW提供的运算节点在框图中拖拖拽拽的确实不太方便。
MATLAB script节点插入到程序框图之后,会有一个文本编辑区域,可以在其中编写代码,如下图所示:

这个节点实际上对应了一个MATLAB Automation Server,该Server的Command Window在运行程序之后也会出现。
一个程序模块想要发挥作用,必然会有输入和输出端口。我们可以通过MATLAB script节点的右键菜单进行配置,如下图所示:


添加了端口之后需要指定名字,这个名字在MATLAB脚本中作为变量名来使用,如下图所示

但是这样还不能和LabVIEW其它节点的数据流对接。图形语言怎么分类我不太清楚,但LabVIEW给我的感觉比较像Static Type Language,想要让MATLAB script节点顺利接入到LabVIEW框图的数据流上,需要指定输入/输出端口的类型。在端口上点右键,选择类型即可,如下图所示:


作为练习,编写了一个根据Look and Say序列第n个元素计算第n+1个元素的程序。什么是Look and Say序列?答案可以在https://en.wikipedia.org/wiki/Look-and-say_sequence找到。代码中用到的算法可以参考《快使用sort-diff-find组合技》。程序框图如下:

程序界面如下:


值得注意的是,在界面上添加数组控件之后,还要往数组控件里放入一个数值控件,表明这个数组是一个数值数组。所以说LabVIEW G语言有种Static Type的感觉。
看一下运行的效果:


由于MATLAB script节点中的MATLAB代码都是在MATLAB的Automation Server中执行的,因此我们可以在Server的Command Window中查看各个变量的值:

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top