×
测量测试 > 测试测量应用 > 详情

开发自定义的LabVIEW插件

发布时间:2021-01-19 发布时间:
|
插件能够丰富一种工具的功能,使之能够被应用于更多的领域。对LabVIEW而言,它既是一种程序设计语言,同时也是一个程序设计环境。从后者的角度来看,LabVIEW提供了一系列接口供第三方的插件调用。NI通常把这种用于专业的附加于LabVIEW开发环境的插件称为工具包(Toolkits),并且往往价格不菲。如Report Generation Toolkit就是将LabVIEW与Microsoft Office结合起来,使程序员能够使用它更方便地生成doc或者xls格式的报表。由于LabVIEW并没有完全的开放,NI对第3方开发的工具包(插件)也进行了比较严格的管制,只有经过NI核查并且认证的工具包才能够在NI的产品目录中发布出去。
尽管目前还没有一种统一的平台管理和发布各个各样的LabVIEW插件(如同Apple的App Store一样),但是国内外一些组织也在通过自己的方式努力着。例如JKI团队(介绍)建立的VI Package Manager(下载)就是一个专门用于管理和发布JKI撰写的插件,全球的程序员都可以免费下载并使用其中包含的各种插件,如图 1所示。


图 1 VI Package Manager
一般而言,插件的目的是为了解决某一个特定的问题而编写的某一独立的应用程序。通常有2种调用方式:
  1. 通过函数选板或控件选板调用。也就是插件以VI的方式供程序员直接使用,就如同使用LabVIEW自带的子VI函数一样。
  2. 通过LabVIEW的菜单栏调用。也就是在现有的LabVIEW菜单栏中增加一个菜单项用来调用插件。
目前,除了NI发布的收费的插件之外,最好的插件提供者就是JKI团队了。它会通过VI Package Manager应用程序自动向全球的程序员分发,程序员直接可以免费使用。

1.1使用模板集成插件VI

LabVIEW允许将一些反复使用的VI保存成模板供反复调用,单击LabVIEW菜单栏的“File>>New…”菜单项,弹出如图 2所示的对话框。在图中的列表框左侧的“From Template”文件夹中,列出了系统预定义的若干个模版VI。这相当于定义了一个VI开发的起点,不用总是从一个空的VI开始。


图 2 New对话框
例如,可以把一些常用的程序设计模式vi另存为VI模板的格式(File>>Save As…,选择vit后缀),并保存在硬盘中。当需要调用某一个模板时,打开图 2所示的对话框,选择VI>>From Template>>User>>Browse…按钮,则系统会自动从该模板新建一个VI。
程序员可以提供一些VI并以vit格式发布,使用者只需要调用时选择就可以了。很明显,这种基于vit格式的插件发布方式特别适合于LabVIEW程序设计模式的要求。因此,可以建立一些常用的LabVIEW程序设计模式的VI,并以vit模板的方式调用。

1.2使用函数选板或控件选板集成插件VI

在NI提供的工具包中,绝大部分是以VI或控件的方式发布的。也就是说,插件的发布者希望使用者能够直接在LabVIEW的背面板中调用插件提供的子VI以完成某一特定的功能。
为了调用方便,可以将插件中的VI和控件直接嵌入到函数选板和控件选板中,这样不会改变LabVIEW程序开发者的使用习惯,如同使用LabVIEW自带的子VI一样。
选择Tools>>Advanced>>Edit Palette Set…菜单项,将弹出选板编辑对话框,如图 3所示。程序员可以在此处新建一个图标,并将该图标与某一个vi或llb关联起来。


图 3 Edit Palette Set
这种发布方式是常见的工具包/插件发布方式,它相当于增加了LabVIEW本身的内部VI,以扩展完成某些特殊的功能。

1.3使用LabVIEW菜单栏集成插件

能否将某一小工具嵌入到LabVIEW中呢?如独立的exe应用程序,或者设计某一个VI用来统计某个文件夹VI所占用的空间。LabVIEW也提供了将独立的应用程序集成到菜单栏的接口。
【应用(下载)】
本例将Windows的计算器、记事本等作为独立的应用程序导入到LabVIEW中,并将《LabVIEW程序设计模式》系列中的“可乐贩卖机”VI嵌入到LabVIEW中。
LabVIEW只能够嵌入以vi结尾的文件,因此需要新建两个VI调用Windows系统的计算器和记事本工具。如图 4所示,新建一个VI命名为calc.vi,调用System Exec.vi函数,并在VI运行结束后退出。


图 4 calc.vi背面板
为了使得该VI被调用时就自动运行,因此按下Ctrl + I键,在VI Properties属性对话框中的Execution页勾选“Run when opened”项,如图 5所示。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
全世界最大微波暗室:美国空军贝尼菲尔德微波暗室!