从LabVIEW 8.0开始,LabVIEW提供了一个很有用的功能,叫Mathscript,可以使用类似matlab中文本式的数学编程语言来进行编程。经过8.0, 8.2, 8.5, 8.6数个版本的发展,Mathscript的功能已经越来越强大。
在LabVIEW中,Mathscript有两种方式供用户进行编程,Mathscript Window和Mathscript Node,前者是交互式的编程调试环境,而后者更可以内嵌入VI中,形成既有图形,又有文本的“混合编程”方式。
简单介绍完毕,那么接下来我们就一起来学习一下吧~~
利用LabVIEW MathScript 开发算法:第一部分——LabVIEW MathScript 节点
概本文提供了使用LabVIEW MathScript节点一开发算法的范例。本系列的下一篇**将研究交互式LabVIEW MathScript 窗口。
目录
- MathScript 含义
- LabVIEW MathScript 节点
- LabVIEW 和图形化编程介绍
- 在算法开发和原型化中使用MathScript节点
MathScript 含义无论您是要开发算法、研究信号处理理论还是分析结果,利用LabVIEW 您可以选择最有效的技术计算语法。您可以结合LabVIEW 图形化编程方式和LabVIEW MathScript ,它是面向数学的文本化编程语言,兼容广泛使用的m文件脚本语法。
参见:
LabVIEW MathScript 内幕:了解什么特性使LabVIEW 如此完美的适合于文本化算法开发和原型化
LabVIEW MahtScript示例库:本站点包含了大量LabVIEW MathScript示例。 LabVIEW MathScript 节点您可以通过两种接口来使用LabVIEW MathScript——LabVIEW MathScript 交互式窗口和MathScript 节点。参考本系列**的第二篇来了解有关LabVIEW MathScript 的更多信息。
利用LabVIEW MathScript 节点——下图中的蓝色矩形区域,您可以在LabVIEW 图形化程序中(虚拟仪器——VI)中运行m文件语法脚本。您可以使用MathScript 节点在VI中插入文本化算法,然后在LabVIEW 环境中通过增加旋钮、滑块、按钮、图形和其它用户控制件和显示件来仪器化您的脚本。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
参见:
利用LabVIEW 进行算法开发和原型化:第二部分——使用MathScript 交互式窗口
LabVIEW 和图形化编程介绍
LabVIEW 是用于工程和科学应用的图形化开发平台,比如设计、控制和测试等。在LabVIEW 中,您可以利用输入控件和显示控件来建立用户界面——前面板。输入控件包括旋钮、按钮、拨盘、文本输入域和其它输入对象。显示控件包括图形、数码显示、LED和其它输出显示。在您建立好用户界面后,利用VI和结构您可以增加代码来控制前面板对象。程序框图包含了这种代码。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
完成下列步骤,建立一个VI的前面板和程序框图
1. 打开LabVIEW
2. 在LabVIEW Getting Started窗口中选择File»New VI,或者点击Blank VI来建立一个新VI。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
3. 在VI的前面板上,选择View»Controls Palette来显示控件选板。
4. 在Modern模板的图标上移动光标定位到Numeric选板上。当您在Controls选板的图标上移动光标,图标下的提示条上会显示子选板、输入控件或显示控件的名称。
5. 点击Numeric图标以显示Numeric选板
6. 在Numeric选板的图标上移动光标到Vertical Pointer Slide(垂直指针条)上。
7.点击Vertical Pointer Slide图标并拖放到前面板上。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
8. 双击Vertical Pointer Slide的Slide标签。在出现的文本框中键入Amplitude(幅值)。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
8. 在Controls选板上点击Modern链接返回到Modern顶层模板。在Modern模板的图标上移动光标定位到Graph选板上。
9.点击Graph图标显示Graph选板。
10. 在Graph选板的图标上移动光标定位到Waveform Graph。点击Waveform Graph图标并拖放到前面板上。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
11. 选择Window»Show Block Diagram来显示VI的程序框图。建立程序框图和建立前面板类似。当您把操作对象放置在前面板上时,LabVIEW 会在程序框图中为这些对象建立连线端子。您可以连接数据出入程序框图中的端子,从而在程序的用户界面上显示数据或者在程序中使用用户输入值。
12. 在程序框图上找到Amplitude 和Waveform Graph端子。
与 labview结合使用(转)" style="border: 0px; max-width: 580px;">
13.选择File»Save As来保存VI。
参考Getting Started with LabVIEW(LabVIEW 使用入门)来了解更多有关信息,包括LabVIEW 图形化编程环境和基本的LabVIEW 特性来建立数据采集和仪器控制程序。
参见:
LabVIEW 使用入门 在算法开发和原型化中使用MathScript节点
您可以使用MathScript 节点在LabVIEW 中进行编程开发和原型化算法。完成以下步骤可以在MathScript 节点中进行编程开发和原型化算法。您将在前面已经生成的VI中运行该脚本。
1. 在程序框图上,选择View»Functions Palette来显示Functions选板。
2. 在编程模板的图标上移动光标定位到Structures选板上。
3.点击Structures图标显示Structures选板。
4. 在Structures选板上移动光标定位到MathScript 节点上。
5. 点击MathScript Node图标。
6.在程序框图上,点击并拖放鼠标画出矩形框来放置MathScript 节点。
与 labview结合使用(转)" style="border: 0px;">
7.在MathScript 节点内部点击并输入下列命令。
x = linspace(0, 2*pi, 30);
b = A*sin(x)
注意x = linspace(0, 2*pi, 30);命令生成一个新的x变量并在0到2*pi内均匀取30个值来填入变量。
(可选)您也可以右击MathScript 节点并从快捷菜单中选择Import来输入您所建立的m文件脚本。
与 labview结合使用(转)" style="border: 0px;"> 8. 右击MathScript 节点框并从快捷菜单中选择Add Input。
9. 在输入端子中键入A,为脚本的A变量提供输入。
与 labview结合使用(转)" style="border: 0px;">
10.右击MathScript 节点框并从快捷菜单中选择Add Output。
11. 在输出端子中键入b,为脚本中的b变量提供输出。
12. 右击b输出端子并从快捷菜单中选择Choose Data Type»1D-Array»DBL 1D来指定b输出变量的数据类型。
与 labview结合使用(转)" style="border: 0px;">
13. 把光标移动到Amplitude端子的箭头上。光标变成了线轴或连线工具。利用连线工具把程序框图上的对象连接起来。
14. 当连线工具出现时,点击Amplitude端子的箭头,然后再点击MathScript 节点的A输入来连接两个对象。数据将顺着这条连线从Amplitude端子流向MathScript节点。
15.类似地,连接b 输出到Waveform Graph端子。现在您可以从脚本中获取合适的数据并利用LabVIEW 丰富的用户界面功能来可视化地分析结果。程序框图应如下所示:
与 labview结合使用(转)" style="border: 0px;">
16.选择Window»Show Front Panel来显示VI的前面板。
17.把Amplitude控件的滑块拖放到大约3的位置。
18. 点击前面板顶端的Run按钮或白色箭头。注意波形图形更新为正弦波。
与 labview结合使用(转)" style="border: 0px;">
19.拖拉Amplitude控件的滑块到不同的值并再次运行VI。注意波形会相应地更新。
20.(可选)点击前面板顶端的Run Continuously按钮或循环箭头。注意:每次当您改变Amplitude控件的值时波形图也会更新。
21.选择File»Save来保存VI。
您可以通过交互式选板、对话框和菜单来操作这些LabVIEW 工具。LabVIEW 也提供了上百种VI,让您在所建立的程序中使用它们。拖放这些VI到程序框图中可以定义您所写程序的功能。这种点击方式能极大地减少从程序最初建立到最终解决方案所需的时间。
|