LabView学习

时间:2024-03-19 18:22:10

一、基础篇

1Labview是一种程序开发环境,由美国国家仪器(NI)公司研制开发

2NI-VISA(Virtual Instrument Software Architec-ture,以下简称为“VISA”)是美国国家仪器NI(NationalInstrument)公司开发的一种用来与各种仪器总线进行通信的高级应用编程接口。

3ICP (IVI Compliance Package)可互换虚拟仪器(IVI)兼容工具包这一软件包包含了若干 IVI类驱动程序和支持库,对于开发和实现各种运用仪器互换性的应用系统是必不可少的。

4IDIW(Instrument Driver Import Wizard)仪器驱动导入向导程序。

IVI(Interchangeable Virtual Instruments)可互换虚拟仪器,是一个革命性的仪器驱动软件技术标准。

 

二、入门篇

1LabView程序又称虚拟仪器,即VI,其外观和操作类似于真实的物理仪器(如示波器和万用表)。

2LabView提供众多输入控件和显示控件用于创建用户界面,即前面板。输入控件指旋钮、按钮、转盘等输入装置。显示控件指图形、指示灯等输出显示装置。创建用户界面后,可添加各种VI和结构作为代码,从而控制前面板对象。代码在程序框图中编写。

3LabView不仅可与数据采集、视觉、运动控制设备等硬件进行通信,还可以与GPIBPXIVXIRS232、以及RS485等仪器通信。

4、前面板

前面板是VI的人机界面。输入控件和显示控件用于创建前面板,分别是VI的交互式输入和输出端口。输入控件和显示控件位于控件选版上。

5、前面板设计

 LabView学习

6、程序框图

程序框图是图形化源代码的集合,图形化源代码又称G代码,或程序框图代码,它决定了VI的运行方式。程序框图代码使用图形化表示的函数来控制前面板对象。前面板对象在程序框图上显示为图标接线端。连线将输入控件和显示控件的接线端与各Express VIVI和函数相互连接。数据从输入控件沿着连线流向VI和函数,再从这些VI和函数流向其它VI和函数,最后流向显示控件。数据在程序框图节点中的流动决定了VI和函数的执行顺序。这就是数据流编程。

7、程序框图设计

 LabView学习

 

三、进阶篇

1、与仪器通信

如使用仪器驱动,用户无需学习各种仪器的编程协议,从而简化仪器控制并减少测试程序的开发时间。仪器驱动是控制可编程仪的一套程序集合。各个程序对应一个编程操作,如配置、读取、写入、和触发仪器等。在仪器控制中应尽可能使用仪器驱动。NI为各种仪器提供了数千种仪器驱动程序。

1) 仪器驱动程序

NI仪器驱动查找器用于在不离开LabView编程环境的条件下查找和安装LabView即插即用的仪器驱动。

2) 仪器I/O助手

如果无法找到某个仪器驱动,通过“仪器I/O助手”Express VI可与该仪器进行通信。

3) NI仪器驱动网查找并安装

2、互连接口

1) 调用库函数节点(在LabView中调用共享库)

直接调用DLL库或共享库;可用于调用以文本编程语言编写的代码。

2) 执行系统命令VI

“执行系统命令”VI可从VI内部执行或启动其他基于Windows的应用程序、命令行应用程序、(Windows)批处理文件或(Mac OS XLinux)脚本文件。使用“执行系统命令”VI可在命令字符串中包含执行命令支持的任何参数。

3) .NET函数、ActiveX函数

.NET函数用于创建.NET对象,设置该对象的属性或调用其方法,以及在.NET环境处理对象事件。也可在前面板上创建.NET控件

ActiveX函数用于与其它支持ActiveX的应用程序(例如,Microsoft Excel)间传递属性和方法。

3、生成和发布应用程序(可执行程序、安装包、动态库)

LabView可创建以下可发布应用程序的类型:独立应用程序安装程序、.NET互操作程序集打包项目库共享库源代码发布、Zip文件。 

1) 必须通过项目,而不是单个的VI,生成应用程序。

2) 应用程序拷贝到要运行的机器后,需在安装LabView的运行环境(LRTE)。

3) 生成安装程序,可自动打包运行程序所需的运行环境,并在目标机器自动安装所需的环境。

4) 共享库,需选择导出到DLL的函数接口。若导出的函数接口全是可转换的基础数据类型,生成的动态库可直接使用。若导出的函数接口有LabView的内置数据类型,导出的函数接口类型需要转换后使用,转换函数需要使用\cintools目录下的类型转换函数库。

4、LabView其他功能

1) 以编程方式控制VI(基础>以编程方式控制VI

通过编程控制LabView编程环境、VI、输入控件和显示控件的属性和方法——通过编程来控制VI的运行方式、设置控件的外观或LabView编程环境的行为等。

VI服务器允许用户通过编程控制VILabVIEW。可通过程序框图、ActiveX技术和TCP协议访问VI服务器。VI服务器的操作既可在本地计算机上进行,也可通过网络远程执行。 

2) 传输数据(基础>传输数据)

a) 数据流元素

场景:在多数程序框图对象间发送数据。

范例:从VI输出传输数据至VI输入。

方法: 连线、移位寄存器、 反馈节点

b) 缓冲接口

场景:在位置间发送数据,此时要求避免或丢失数据值。

范例:采集波形;发送消息或命令;流输出图像。

方法:内部终端或PC(队列、RT FIFO、 用户事件、 异步消息传递通信(AMC)参考库);已联网网络流、TCP、简单TCP消息传递(STM)参考库);内部FPGA(终端范围的FIFO、VI定义的FIFO、DRAM);FPGA至主机或主机至FPGA(DMA FIFO);FPGAFPGA点对点(P2P) FIFO)

c) 变量接口

场景:在内存中存储容易获取的值,目标为获取最新值。谨慎使用以避免竞争状态

范例:监控当前温度;监控系统状态。

方法:内部终端或PC(局部变量全局变量功能全局变量 (FGV)、单进程共享变量数据值引用当前值表格 (CVT));已联网网络发布共享变量编程共享变量API、Web服务、UDP);内部FPGA(全局变量存储器项、 寄存器项);FPGA至主机或主机至FPGA读取/写入控件、NI扫描引擎和变量、 用户定义I/O变量

3) 命令行参数、系统信息、程序信息等

属性节点:获取(读取)和/或设置(写入)引用的属性。通过属性节点对本地或远程应用程序实例VI或对象获取或设置属性和方法也可通过属性节点访问LabVIEW类的私有数据。属性节点可自动调整为用户所引用的对象的类。LabVIEW的属性节点可访问XML属性、VISA属性、.NET属性和ActiveX属性

 

四、学习篇

以上知识参考了下列资料,为此列出以供参考。

LabView入门》(官方入门教程)

LabView教程》(清华版)

LabView帮助》